使用docker和flask框架部署python项目
一、创建新的conda虚拟环境
conda create -n openai python==3.10
创建项目如flask_demo
并使用该环境。
先运行下面命令,如果生成的requirements.txt
有内容,需要全部uninstall
,以保证最开始是无第三方依赖的干净环境。项目打包时候再次运行
pip freeze > requirements.txt
二、创建flask应用
在当前项目下创建app.py
,内容如下
from flask import Flask, request
# 实例化Flask对象
app = Flask(__name__)
@app.route('/', methods=['GET', 'POST'])
def hello_world():
return 'Hello World!'
if __name__ == '__main__':
app.run(host='0.0.0.0', port=5000)
三、创建Dockerfile文件
在当前项目下创建Dockerfile
,内容如下
FROM python:3.10
WORKDIR /flask_demo
COPY requirements.txt requirements.txt
RUN pip3 install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple/
COPY . /flask_demo
CMD ["python3","app.py"]
四、打包镜像
将项目文件夹如flask_demo
上传到linux服务器。并进入flask_demo
目录下,运行打包命令
docker build -f ./Dockerfile -t flask_demo:1.0 .
五、运行容器
运行容器
docker run -d --name flask_docker_web -p 5000:5000 flask_demo:1.0
挂载目录,运行容器
docker run -d --name flask_docker_web2 -v /root/flask_docker:/flask_demo -p 5000:5000 flask_demo:1.0
记得打开5000端口的防火墙,即可通过ip:5000
访问到Hello World!