文章目录
1 创建一个最小的Flask应用
1.1 app.py文件
from flask import Flask
app = Flask(__name__)
@app.route('/')
def index():
return "Hello dokcer flask"
1.2 requirements.txt 文件
导出本项目所有的Python依赖包
pip freeze > requirements.txt
1.3 Dockerfile文件
FROM python:3.9 # 基础镜像,python3.9
MAINTAINER Zhao # 镜像作者信息
WORKDIR /app
# 工作目录,这个目录对应于镜像内的工作目录,后面的所有涉及到路径的操作都可以
# 使用WORKDIR的相对路径来指定
COPY requirements.txt requirements.txt
# 拷贝requirements.txt 到 镜像中/app/requirements.txt
RUN pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple
# 安装pip包
COPY . .
# 将当前文件中的目录复制到/app目录下
ENV FLASK_APP app
# 设置环境变量,让flask run 命令能够找到启动文件的位置
CMD ["flask","run","-h","0.0.0.0","-p","5000"]
# 执行启动命名 flask run -h 0.0.0.0 -p 5000 列表中的每个元素之间代表空格
1.4 本地文件的目录结构(重点)
下图是本地的文件目录结构
2 使用Dockerfile打包镜像
打包
docker build -t demo2:0.1 .
打包成功
运行镜像
docker run --name demoflask1 -p 5000:5000 demo2:0.1
容器启动成功
测试远程访问
3 进入运行的镜像内部
进入容器
docker exec -it demoflask1 /bin/bash
截图
对比进入镜像后的截图和Dockerfile文件看