在docker容器中运行flask应用过程

 更新时间:2024年06月11日 11:08:48   作者:taotao033  

这篇文章主要介绍了在docker容器中运行flask应用过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

目录
  • 1、目录结构设定
  • 2、创建一个简单的flask
  • 3、创建Dockerfile
  • 4、创建容器Container
  • 5、运行容器
  • 6、测试访问
  • 总结

1、目录结构设定

.
├── Dockerfile
└── app
    ├── app.py
    └── requirements.txt

2、创建一个简单的flask

# app.py
from flask import Flask

app = Flask(__name__)

@app.route('/')
def hello():
    return "Demo Flask & Docker application is up and running!"

if __name__ == '__main__':
    app.run(host="0.0.0.0", port=80)

注意:

在app.run() host="0.0.0.0"

这里必须为0.0.0.0,是一个通配符IP地址,将匹配任何可能的输入。

3、创建Dockerfile

FROM python

WORKDIR /opt/demo/
COPY /app .

RUN pip install -r requirements.txt

ENTRYPOINT python app.py
  • 行1:从DockerHub上拉取和使用最新版的python,当然根据自己项目需要可以改成:FROM python:3.6
  • 行3:设置工作目录 。相当于cd 进入该目录
  • 行4:复制app文件夹到WORKDIR
  • 行6:安装相关依赖包,这里可以加 -i https://pypi.tuna.tsinghua.edu.cn/simple 加快下载速度。
  • 行8: 当docker run被执行时,开始运行Flask application。

4、创建容器Container

docker build -t demo-dockerflask:latest .

5、运行容器

docker run -it --rm -p 80:80 demo-dockerflask:latest
  • 生产环境运行(以daemon方式运行)
docker run -d -p 80:80 --name demo-dockerflask-1 demo-dockerflask:latest
  • -it 终端交互
  • --rm 本次程序终止,容器会自动清除
  • -d 是后台运行
  • -p 是建立端口映射
  • --name 是容器的名称
  • --:latest 是镜像的标记Tag,如:latest

6、测试访问

用浏览器打开127.0.0.1即可!

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持小闻网。

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。