群晖NAS通过docker部署Flask(续)

Flask部署系列

群晖NAS通过docker部署Flask
在 Windows 平台部署 Flask
如何在 CentOS 6.5 上部署 Flask

本篇对群晖上的 docker 容器部署进行补充说明。

pipreqs 模块生成 requirements.txt 文件

在正式将代码上传到 NAS 之前,需要将项目的依赖全部放入到 requirements.txt 文件。使用 pip freeze > requirements.txt 命令生成 requirements.txt,需要手工删除,比较麻烦。变通方法是使用 pipreqs 模块。

pipreqs 使用 pip 命令安装:

pip install pipreqs

然后在项目的根目录,使用下面的命令将项目的依赖写入 requirements.txt 文件。

pipreqs ./

在 Windows 平台,需要制定字符编码:

pipreqs ./ --encoding=utf8

pipreqs 写入到 requirements.txt 可能存在误差,不一定百分百准确。

Gunicorn + Gevent

Gunicorn 是一个 Python 的 WSGI HTTP 服务器。它所在的位置通常是在反向代理(如 Nginx)或者 负载均衡(如 AWS ELB)和一个 web 应用(比如 Django 或者 Flask)之间。它是一个移植自 Ruby 的 Unicorn 项目的 pre-fork worker 模型,既支持 eventlet 也支持 greenlet。

Gevent 做协程,解决高并发的问题。

在 requirements.txt 文件的后面,加上 gunicorn 和 gevent :

Flask==2.0.1
Flask_HTTPAuth==4.4.0
flask_marshmallow==0.14.0
Flask_SQLAlchemy==2.5.1
Werkzeug==2.0.1
marshmallow-sqlalchemy
pymysql
gunicorn
gevent

编写 gunicorn.conf 配置文件

在 gunicorn.conf.py 文件中,进行如下设置:

workers = 3
worker_class = "gevent"
bind = "0.0.0.0:50060"

制作 Dockerfile

FROM python:3.6-stretch

WORKDIR /app
ADD . /app

RUN pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple

CMD ["gunicorn", "main:app", "-c", "./gunicorn.conf.py"]

制作 Docker 镜像

通过 ssh 连接到群晖系统,在项目文件的根文件夹运行下面的命令生成 docker 镜像:

docker build -t dockername .

群晖 docker 中启动镜像

设置端口映射后启动容器。

群晖NAS通过docker部署Flask(续)

部署完成。

Original: https://blog.csdn.net/stone0823/article/details/127157177
Author: stone0823
Title: 群晖NAS通过docker部署Flask(续)

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/744487/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • pyTest

    1、安装命令行pip install pytestpycharm安装下载pytest包,python setup.py install 2、start先创建一个简单的用例:def …

    Python 2023年9月11日
    035
  • Ubuntu下源码编译VirtualBox四 —— 源码编译(3)

    接前一篇文章《Ubuntu下源码编译VirtualBox三 —— 源码编译(2)》,链接如下: (16)libsdl1.2-dev $ sudo apt install libsd…

    Python 2023年11月6日
    037
  • 基于PythonFlask框架和BootStrap4的学生选课系统设计

    资源下载地址:https://download.csdn.net/download/sheziqiong/85724004资源下载地址:https://download.csdn….

    Python 2023年8月15日
    075
  • Pytorch用法说明

    1. pytorch基本用法 1. torch.tensor torch.tensor是默认的tensor类型(torch.Floattensor)的简称。 2. torch.Te…

    Python 2023年8月25日
    047
  • 使用GitHub Actions自动构建DockerHub镜像

    DockerHub开启付费功能后,自动构建的功能不再免费开放了,这样Github的项目就不能再免费自动构建docker镜像并自动发布到DockerHub上。 前言 这里记录下使用 …

    Python 2023年6月3日
    072
  • 【Python打包成exe方法】——已解决导入第三方包无法打包的问题

    在我们写代码的过程中,我们开发的脚本一般都会用到一些第三方包,可能别人也需要用到我们的脚本,如果我们将我们的xx.py文件发给他,他是不能直接用的,他还需要安装python解释器,…

    Python 2023年11月9日
    044
  • Python量化交易实战:获取股票数据并做分析处理

    量化交易(也称自动化交易)是一种应用数学模型帮助投资者进行判断,并且根据计算机程序发送的指令进行交易的投资方式,它极大地减少了投资者情绪波动的影响。量化交易的主要优势如下: 快速检…

    Python 2023年8月2日
    086
  • 用Python制作小游戏

    谁还没有玩过俄罗斯方块呢,这款单机小游戏,简单易懂,最好打发无聊时间了。 使用python除了可以爬取图片,视频,当然可以制作一些小游戏了。 其实这个很简单,就是转化数据很麻烦 ☹…

    Python 2023年9月19日
    040
  • 攻防世界-Cat

    标题: Cat 解说:做此题就感觉要东抓西抓,得发疯! 题解过程:1: 观察登录页面,并尝试输入loli.club,发现没有任何反应 2:尝试输入baidu.com等其它域名测试,…

    Python 2023年8月4日
    067
  • 人工智能导论–基于神经网络的模式识别实验

    实验3 基于神经网络的模式识别实验 一、实验目的: 理解BP神经网络和卷积神经网络的结构和原理,掌握反向传播学习算法对神经元的训练过程,了解反向传播公式。通过构建BP神经网络和卷积…

    Python 2023年9月30日
    063
  • 〖Python语法进阶篇⑨〗 – 初探正则

    抵扣说明: 1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。 Original: https://blo…

    Python 2023年11月8日
    027
  • flutter 并不完美的登录完美验证功能

    flutter 并不完美的登录完美验证功能 前言 一、文本输入功能 二、验证提示功能 三、业务部分 总结 前言 在一个APP 中,登录页面做为门户,很多时候,我们都需要写一个完善的…

    Python 2023年11月7日
    041
  • python+django+vue二手车信息网站flask

    本二手车信息网站主要包括个人中心、用户管理、二手车信息管理、二手车分类信息管理等多个模块。它帮助二手车实现了信息化、网络化,通过测试,实现了系统设计目标,相比传统的管理模式,本系统…

    Python 2023年8月6日
    043
  • Scrapy框架中管道的使用

    1. pipeline中常用的方法: 管道能够实现数据的清洗和保存,能够定义多个管道实现不同的功能,其中有个三个方法: process_item(self,item,spider)…

    Python 2023年10月2日
    051
  • 【更新】不到90行代码,pygame从无到有教会你制作有趣的大小图全景效果,不看是你的损失!

    pygame从无到有教会你制作有趣的大小图效果,不看是你的损失,好的,马上开始。 文章目录 一、实现基本的功能 * (一)先搭个架子 (二)直接贴个图 – 1、代码如下…

    Python 2023年9月21日
    050
  • Matplotlib 绘图入门教程

    Matplotlib * – + matplotlib.pyplot + 绘图 + * 绘图流程 * 默认操作 + 如果我想绘制2幅图像呢? + * 另一种实现方式 *…

    Python 2023年9月1日
    057
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球