赞
踩
Gunicorn 是一个 Python WSGI 服务器,可以用来部署 Python Web 应用程序。它提供了高性能、高可用性和灵活的配置选项。
Flask 是一个轻量级的 Python Web 框架,提供了灵活的路由、模板引擎和请求对象等功能。它是构建 Web 应用程序的理想选择。
Docker 是一个容器化的解决方案,允许开发者将应用程序和依赖项打包到一个容器中,然后在任何支持 Docker 的环境中运行。它提供了高效的开发、测试和部署体验。
首先,创建一个新的目录,例如 myflaskapp
,然后创建 app.py
文件:
- from flask import Flask, request, jsonify
-
- app = Flask(__name__)
-
- @app.route('/', methods=['GET'])
- def hello_world():
- return jsonify({'message': 'Hello, World!'})
-
- if __name__ == '__main__':
- app.run(debug=True)
这个示例中,我们创建了一个简单的 Flask 应用程序,提供了一个 /
路由,返回一个 JSON 对象。
创建一个新的文件 Dockerfile
,用于构建 Docker 镜像:
- FROM python:3.9-slim
-
- WORKDIR /app
-
- COPY requirements.txt .
-
- RUN pip install -r requirements.txt
-
- COPY . .
-
- CMD ["gunicorn", "-w 4", "app:app"]
这个示例中,我们从 Python 3.9 的 slim 镜像开始,然后安装依赖项,复制应用程序代码,最后设置容器启动命令为 Gunicorn 服务器。
创建一个新的文件 requirements.txt
,用于记录应用程序的依赖项:
- Flask==2.0.1
- gunicorn==20.1.0
这个示例中,我们记录了 Flask 和 Gunicorn 两个依赖项。
使用以下命令构建 Docker 镜像:
docker build -t myflaskapp .
这个命令将使用 Dockerfile
文件构建一个名为 myflaskapp
的 Docker 镜像。
使用以下命令运行 Docker 容器:
docker run -p 5000:5000 myflaskapp
这个命令将运行容器,并将容器的端口 5000 映射到宿主机的端口 5000。
使用浏览器访问 http://localhost:5000
,可以看到应用程序的响应结果:
- {
- "message": "Hello, World!"
- }
这个示例中,我们使用 Gunicorn+Flask+Docker 构建了一个简单的 Web 应用程序,可以在 Docker 容器中运行。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。