什么是DockerCompose
Docker Compose通过一个单独的docker-compose.yml 模板文件(YAML 格式)来定义一组相关联的应用容器,帮助我们实现多个相互关联的Docker容器的快速部署。
我们以flask+mysql + redis项目为例
项目目录结构如下:
- flask_project/
- app/
- other_files/
- docker-compose.yml
- Dockerfile
- requirements.txt
- run.py
使用docker Compose部署项目主要分为以下四个步骤:
1、写Dockerfile 文件 用于构建自定义flask镜像
# 基于 Python 3.8 Alpine 镜像构建
FROM python:3.8-alpine
# 设置时区环境变量
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
# 设置工作目录
WORKDIR /app
# 将当前目录下的所有文件复制到工作目录中
COPY . /app
# 安装 Python 依赖
RUN pip install -r requirements.txt
# 暴露容器端口 10020 供宿主机与容器连接使用
EXPOSE 10020
# 运行应用程序
CMD ["python", "run.py"]
2、写docker-compose.yml文件
用于创建flask容器实例 mysql容器实例 redis容器实例
配置虚拟网络 关联多个容