为了账号安全,请及时绑定邮箱和手机立即绑定

Docker compose mysql 容器在依赖它的应用程序之后运行

Docker compose mysql 容器在依赖它的应用程序之后运行

慕侠2389804 2021-10-13 10:12:25
我有一个简单的 Java 应用程序,它依赖于 MySQL。这是我的docker-compose.yaml样子:version: "3.3"services:  docker-mysql:    image: mysql:latest    environment:      - MYSQL_ROOT_PASSWORD=root      - MYSQL_DATABASE=test      - MYSQL_PASSWORD=root    volumes:      - /var/lib/mysql    ports:      - 3306:3306  my-app:    build: .    depends_on:      - docker-mysql    ports:      - 8080:8080这是我Dockerfile创建一个容器化应用程序,即my-app:FROM openjdk:8EXPOSE 8080ADD /target/Service1-0.0.1.jar Service1.jarENTRYPOINT ["java","-jar","Service1.jar"]当我尝试时docker-compose up,应用程序成功启动 Tomcat,但无法连接到 MySQL 容器,因为它在应用程序之后启动:
查看完整描述

2 回答

?
慕虎7371278

TA贡献1802条经验 获得超4个赞

通常,它应该出现在 db 容器之后。docker logs docker-mysql_1 --tail 25 -fPaste的结果是什么。


另外,尝试为您的 db 容器添加一个卷部分,如下所示


environment:

  - MYSQL_ROOT_PASSWORD=root

  - MYSQL_DATABASE=test

  - MYSQL_PASSWORD=root

volumes:

  - /var/lib/mysql


查看完整回答
反对 回复 2021-10-13
  • 2 回答
  • 0 关注
  • 198 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信