关于先启动MySQL的问题
来源:17-20 使用 docker-compose 本地启动三个项目

慕少2454531
2023-08-05
执行 docker-compose up 命令时,Docker会根据Docker Compose文件中定义的服务配置来创建和管理容器。如果服务之间存在依赖关系(通过 depends_on 字段定义),Docker会按照依赖关系的顺序启动容器。例如,如果服务A依赖于服务B,则Docker会先启动服务B,然后再启动服务A。我看配置文件里
server:
build: …/water-drop-server
platform: linux/amd64
container_name: "server"
image: "registry.cn-beijing.aliyuncs.com/blackstone/server:v1"
ports:
- "3333:3000"
volumes:
- "./server:/etc/server.conf"
depends_on:
- mysqlserver
server 是依赖 depends_on: - mysqlserver,为什么视频中还要先启动mysqlserver容器,不然typeorm会报错呢?请老师详解解释,不要惜墨如金。
写回答
1回答
-
黑石
2023-08-05
抱歉,可能我的讲解让你误解了,当使用 depends_on 关键字时,Docker Compose 会按照指定的依赖关系顺序启动服务,但并不会等待该服务的执行完成或可用。它只是确保在启动当前服务之前,所依赖的服务已经在启动过程中。 这是因为 Docker Compose 无法检测和了解服务内部的状态或执行进度。
00
相似问题