关于先启动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 无法检测和了解服务内部的状态或执行进度。

0
0

React18+TS+NestJS+GraphQL 全栈开发在线教育平台

平台级应用+流行全栈技术+实用职场技巧&面试策略 助你升职加薪

438 学习 · 241 问题

查看课程