Python Flask项目部署

本文详细介绍了在Centos7环境下部署Python Flask项目的全过程,包括Python3.6、Nginx、setuptools、pip、Flask及uwsgi的安装与配置,通过实例演示了如何验证各组件的正确安装。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Python Flask项目部署
说明:本次安装为Centos7最小化环境下的安装
一、Python3.6安装
1.安装包下载
下载Python3.6(Python-3.6.7.tgz)的安装包。
2.安装Python3.6
解压安装包
在这里插入图片描述
安装依赖包,下载rpm_data.tar.gz(https://pan.baidu.com/s/1MgiXf4vhj0wgKO18xfO2wA 提取码:wvat)移动到/root目录并解压,cd到解压后的目录下(rpm_data)执行下面命令

rpm -ivh ./*.rpm --nodeps --force

在这里插入图片描述
cd到python的解压目录下执行./configure --prefix=/usr/local/python3命令,安装目录为/usr/local/python3(可以自定义),部分截图如下:
在这里插入图片描述
编译并安装

make && make install

在这里插入图片描述
设置软连接

ln -s /usr/local/python3/bin/python3 /usr/bin/python3.6

安装完成后,执行python3.6命令
在这里插入图片描述
二、Nginx安装
1.下载解压安装包
下载nginx的安装包(nginx-1.16.0.tar.gz)并移动到/root目录下解压。http://nginx.org/download/nginx-1.16.0.tar.gz
2.配置
① cd到nginx的解压目录下,在目录下执行./configure命令

cd /root/nginx-1.16.0
./configure

在这里插入图片描述
3.编译并安装

make
make install

在这里插入图片描述
在这里插入图片描述
4.验证
安装完成后,执行whereis nginx,查看nginx的安装目录
在这里插入图片描述
到nginx目录下执行-t命令,测试nginx是否安装成功,示例如下

cd /usr/local/nginx/sbin
./nginx -t

在这里插入图片描述
5.nginx启动与停止
① 启动nginx

cd /usr/local/nginx/sbin
./nginx

② 停止
./nginx -s stop
③ 端口查看
用ps aux | grep nginx命令查看nginx进程信息
用netstat –nltp命令查看nginx监听的端口
三、setuptools安装
1.下载解压安装包
下载setuptools的安装包(setuptools-19.6.tar.gz)并移动到root目录下解压。https://pypi.org/project/setuptools/19.6/#files
2.安装
cd到解压后的文件夹中,与Python3安装不同,需要执行如下两个命令

python3.6 setup.py build
python3.6 setup.py install

在这里插入图片描述
在这里插入图片描述
四、pip安装
1.下载解压安装包
下载pip的安装包(pip-8.0.2.tar.gz)并移动到root目录下解压。https://pypi.org/project/pip/8.0.2/#files
2.安装
cd到解压后的文件夹中,执行如下两个命令

python3.6 setup.py build
python3.6 setup.py install

在这里插入图片描述
在这里插入图片描述
设置软连接

ln -sv /usr/local/python3/bin/pip /usr/bin/pip

3.验证
输入pip命令出现如图所示效果表示安装成功
在这里插入图片描述
五、Flask安装
1.安装包下载
下载Flask.tar.gz压缩包移动到/root目录下解压(https://pan.baidu.com/s/1v3pwaCkzodMGwPz5pkGMkg 提取码r9qh),cd到解压后的目录中,解压所有压缩包,命令如下

cd /root/Flask
tar zxvf Babel-2.7.0.tar.gz
tar zxvf Click-7.0.tar.gz
tar zxvf Flask-1.1.1.tar.gz
tar zxvf itsdangerous-1.1.0.tar.gz
tar zxvf Jinja2-2.10.1.tar.gz
tar zxvf MarkupSafe-1.1.1.tar.gz
tar zxvf pytz-2018.3.tar.gz
tar zxvf Werkzeug-0.15.5.tar.gz

2.安装
① pytz
解压完成后执行下面命令

cd /root/Flask/pytz-2018.3
python3.6 setup.py install

② Babel
解压完成后执行下面命令

cd /root/Flask/Babel-2.7.0
python3.6 setup.py install

③ MarkupSafe-1.1.1
解压完成后执行下面命令

cd /root/Flask/MarkupSafe-1.1.1
python3.6 setup.py install

④ Jinja2
解压完成后执行下面命令

cd /root/Flask/Jinja2-2.10.1
python3.6 setup.py install

⑤ Click-7.0
解压完成后执行下面命令

cd /root/Flask/Click-7.0
python3.6 setup.py install

⑥ Werkzeug
解压完成后执行下面命令

cd /root/Flask/Werkzeug-0.15.5
python3.6 setup.py install

⑦ itsdangerous
解压完成后执行下面命令

cd /root/Flask/itsdangerous-1.1.0
python3.6 setup.py install

⑧ Flask
解压完成后执行下面命令

cd /root/Flask/Flask-1.1.1
python3.6 setup.py install

3.验证
用vi命令在/root目录下创建hello.py文件,内容如下:

from flask import Flask

app = Flask(__name__)

@app.route("/")

def hello():

    return "Hello World!"

if __name__ == "__main__":

    app.run(host='0.0.0.0', port=8080)

保存退出后在/root目录运行python3.6 hello.py
在这里插入图片描述
运行成功后可以在浏览器中访问10.0.0.37:8080(ip加端口8080),如果是在本地环境中安装浏览器后访问地址为localhost:8080
在这里插入图片描述
六、uwsgi安装
1.安装包下载
下载uwsgi-2.0.18.tar.gz压缩包移动到/root目录下解压。https://pypi.org/project/uWSGI/#files
命令如下:

cd /root
tar zxvf uwsgi-2.0.18.tar.gz

2.安装
cd到解压后的目录执行python3.6 setup.py install
在这里插入图片描述
3.验证
① 用vi在/root目录创建uwsgi.ini文件,把下面的内容copy到文件中

[uwsgi]

socket = 10.0.0.37:8080

chdir = /root

wsgi-file = /root/hello.py

callable = app

processes = 4

threads = 2

pythonpath = /root

在这里插入图片描述
其中chdir填写项目在服务器上存在的路径,wsgi-file填写flask项目中启动文件的路径。
② 修改nginx配置文件/usr/local/nginx/conf/nginx.conf

vi /usr/local/nginx/conf/nginx.conf

在这里插入图片描述
③ 设置软连接

ln -s /usr/local/python3/bin/uwsgi /usr/bin/uwsgi

④ 启动uwsgi和nginx,访问http://10.0.0.37
uwsgi启动:uwsgi --ini uwsgi.ini

nginx:
cd /usr/local/nginx/sbin/
启动:./nginx
停止:./nginx -s stop
重启:./nginx -s reload

在这里插入图片描述

### Flask 应用程序的部署教程 #### 1. 创建 Flask 应用 构建一个功能完整的 Flask 应用程序是成功部署的第一步。确保应用程序逻辑清晰并经过充分测试[^1]。 ```python from flask import Flask, jsonify app = Flask(__name__) @app.route('/') def home(): return jsonify({"message": "Welcome to the Flask App!"}) if __name__ == '__main__': app.run(debug=True) ``` #### 2. 组织项目结构 为了便于管理和扩展,建议按照标准的项目结构组织文件。例如: ``` /my_flask_app /app __init__.py routes.py /static /templates requirements.txt wsgi.py ``` 其中 `wsgi.py` 是 Gunicorn 的入口文件,内容如下: ```python from app import create_app application = create_app() ``` #### 3. 配置 Gunicorn Gunicorn 是一种常用的 WSGI HTTP 服务器,用于生产环境中的 Flask 应用部署。可以通过命令行或配置文件设置其参数。 ##### 安装 Gunicorn 通过 pip 安装 Gunicorn: ```bash pip install gunicorn ``` ##### 启动 Gunicorn 使用以下命令启动服务,指定工作进程数和绑定地址: ```bash gunicorn -w $(nproc --all) -b 0.0.0.0:8000 wsgi:application ``` 这里 `-w` 参数表示工作线程的数量,通常推荐设为 CPU 核心数的两倍;`-b` 表示绑定的 IP 和端口。 #### 4. 使用 Docker 进一步优化部署流程 对于更复杂的场景,可以考虑利用 Docker 来容器化应用。以下是安装 Docker Compose 并创建相关配置的方法[^4]。 ##### 安装 Docker Compose 在 Linux 上安装 Docker Compose 可以通过以下命令完成: ```bash curl -L https://github.com/docker/compose/releases/download/1.22.0/docker-compose-$(uname -s)-$(uname -m) \ -o /usr/local/bin/docker-compose && chmod +x /usr/local/bin/docker-compose docker-compose version ``` ##### 编写 Dockerfile 定义镜像的基础架构以及依赖项: ```Dockerfile FROM python:3.9-slim WORKDIR /app COPY . . RUN pip install --no-cache-dir -r requirements.txt CMD ["gunicorn", "-w", "4", "-b", "0.0.0.0:8000", "wsgi:application"] ``` ##### 编写 docker-compose.yml 文件 简化多容器管理的任务: ```yaml version: '3' services: web: build: . ports: - "8000:8000" volumes: - .:/app ``` 启动容器: ```bash docker-compose up --build ``` #### 5. 测试与验证 最后,在本地运行 Gradio 或其他前端工具来验证接口是否正常返回数据[^5]。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值