1.docker-compose.yml中支持的模板命令
参考:https://yeasy.gitbook.io/docker_practice/compose/compose_file
a. build 通过docker-compose在启动容器之前现根据Dockerfile构建镜像,然后根据构建镜像启动容器
b.command指令 覆盖容器启动后默认执行的命令
c.container_name 指令 用来指定docker-compose启动容器名称 注意:不推荐指定容器名称
d.depends_on 指令 解决容器的依赖.启动先后的问题
注意:当前服务不会等待,被依赖服务【完全启动】才会启动
e.environment 指令 用来给容器启动指定环境变量 相当于 docker run -e 选项
f.env_file 指令 用来给容器启动指定环境变量文件 相当于docker run -e 选项
g.expose 指令 用来指定构建镜像过程中容器暴露的端口号
h.image 指令 用来指定启动容器使用镜像是谁 相当于docker run image(镜像名)
i.networks 指令 用来指定启动容器使用网桥 相当于 docker run --network
j.ports 指令 用来指定宿主机和容器端口映射 相当于 docker run -p
k.volumes 指令 用来指定宿主机中容器目录映射 docker run -v
l.restart 指令 用来指定容器服务总是运行 docker run --restart=always
2.具体使用参考
version: "3.8" # 管理一组服务 services: web: build: ./ # 定Dockerfile上下文目录context 一切都是默认值 context: ./ # 用来指定Dockerfile上下文目录 dockerfile: Dockerfile # 指定Dockerfile文件名称 ports: # 暴露端口 - "8001:8001" #command: ["python","manage.py","runserver","0.0.0.0:8001"] 用来覆盖容器启动之后默认指令,类似于docker run image 覆盖的命令