Bootstrap

全网最全的使用Docker部署Flask教程

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文件看
在这里插入图片描述
在这里插入图片描述

;