docker-compose.yml结构
从以下示例文件展开说说 docker-compose.yml 文件的结构
# 指定 Docker Compose 文件版本
version: '3.8'
# 定义服务
services:
# Web 服务
web:
build: . # 使用当前目录下的 Dockerfile 构建镜像
ports:
- "5000:5000" # 将容器端口 5000 映射到主机端口 5000
volumes:
- .:/app # 将当前目录挂载到容器的 /app 目录
environment:
- FLASK_ENV=development # 设置环境变量
depends_on:
- redis # 依赖 redis 服务
networks:
- app_network # 使用自定义网络
# Redis 服务
redis:
image: redis:alpine # 使用官方 Redis 镜像
ports:
- "6379:6379" # 将容器端口 6379 映射到主机端口 6379
volumes:
- redis_data:/data # 使用命名卷持久化 Redis 数据
networks:
- app_network # 使用自定义网络
# 定义网络
networks:
app_network:
driver: bridge # 使用桥接网络驱动
# 定义数据卷
volumes:
redis_data: # 定义名为 redis_data 的数据卷
1. 全局配置
version
:指定 Docker Compose 文件版本(如3.8
)。services
:定义应用中的各个服务。networks
:定义自定义网络。volumes
:定义数据卷。
2. 服务配置
每个服务可以包含以下参数: