码头工人组成:
version: "3"
services:
db:
container_name: db
image: mysql
ports:
- "3306:3306"
volumes:
- initdb:/docker-entrypoint-initdb.d/:ro
web:
container_name: web
image: my_web
volumes:
- initdb:/initdb/:ro
depends_on:
- db
volumes:
initdb:
my_web 图像包含 /initdb/create_schema.sql.
web 依赖于 db。所以服务数据库将在 web 之前启动。 来自 web 的 create_schema.sql 是否可供数据库使用?
经测试,可用。这是保证还是随机的?
create_schema.sql是在构建my_web镜像时生成的。它不在主机磁盘上。
试图了解何时创建卷并将其映射到容器。如果在启动所有容器之前创建并映射它们,则将保证通过卷共享的数据可用。