目录结构
App.py Dockerfile requirements.txt
App.py
- from flask import Flask
- App = Flask(__name__)
- @App.route("/")
- @App.route("/home")
- def home():
- return "<h1>Home Page</h1>"
- App.run(debug=True,host='0.0.0.0', port=80)
注意: ip 地址填 0.0.0.0 而不是填你本地非 docker 环境正常跑的局域网 ip 地址
- requirements.txt
- Flask==1.0.2
- Dockerfile
- FROM python:3-alpine
- MAINTAINER luli
- WORKDIR /App
- ADD . /App
- RUN pip3 install -r requirements.txt -i https://mirrors.aliyun.com/pypi/simple/
- EXPOSE 80
- CMD ["python3","app.py"]
注意: 如果你 docker 环境使用的 python 版本是 python3 那么你 pip 和 python 指令也要使用 pip3 和 python3
Docker 编译, 启动脚本
- docker build -t pytest2-1 .
- docker run -d --name pyt -p 4000:80 pytest2-1
测试
- // 先看下 docker 日志是否正常
- docker log pyt
- // 访问试下看看
- curl http://192.168.182.129:4000/
- // 不行的话
- docker run -it --name pyt -p 4000:80 pytest2-1 /bin/sh
进入容器内部看看文件是否正常, 执行 python3 App.py 看看
来源: http://www.bubuko.com/infodetail-3193991.html