Flask部署华为鲲鹏云服务器

1.云服务器部署需求:python环境,QQLinux版本,git,7z压缩
2.将Flask文件传至云服务器
方一:QQ传送文件,支持.7z类型的文件传送
方二:git新建项目,利用git进行文件传送
flask项目内容
建议以下步骤均在root下进行
3.使用虚拟环境(建议,若不使用,跳过(2)(3))
(1)cd到项目目录下(跟主程序app.py同一目录),运行 python3 -m virtualenv
(2)运行virtualenv venv
(3)激活虚拟环境:source venv/bin/activate
在这里插入图片描述

前面出现(venv),激活成功
(4)pip3 install uwsgi
(5)pip3 install -r requirements.txt 安装项目所需包
(6)python app.py runserver 检测是否可以运行 在这里插入图片描述
运行成功
4.配置 uwsgi
(1)touch config.ini 在app.py同级目录下创建config.ini的空白文件
(2)gedit config.ini 打开config.ini文件
写入

[uwsgi]
 
socket= 000.000.000.000:5002          #建议用私有IP
chdir = /Home/www/NumberWeb     #项目路径
wsgi-file=/Home/www/NumberWeb/app.py  #项目启动文件路径
callable=app    				#即flask中app = Flask(__name__)的app
processes=4
threads=2
pidfile=./uwsgi.pid

socket建议用华为云提供的网络私有ip
在这里插入图片描述
保存文件
(3)uwsgi config.ini查看是否配置成功
在这里插入图片描述
出现starts server enabled on…表示成功

5.配置nginx
(1)apt-get install nginx
(2)打开nginx服务器的配置文件nginx.conf。一般是在/etc/nginx/nginx.conf路径下。如果不是的话,可以使用whereis nginx命令来找到nginx所在的所有目录,然后一个个看目录下是否有nginx.conf这个文件。
(3)gedit nginx.conf打开nginx.conf文件

server {
        listen       80;
        server_name  000.000.000.000;     #云服务器提供的公网ip
        location / {
		include uwsgi_params;
		uwsgi_pass 000.000.000.000:5002;  #同uwsgi congfig.ini的私有ip
		uwsgi_param UWSGI_PYHOME /home/wasiri/www/NumberWeb/venv; #虚拟环境位置
		uwsgi_param UWSGI_CHDIR /home/wasiri/www/NumberWeb;
		uwsgi_param UWSGI_SCRIPT app:app;
        }

保存文件
6.回到uwsgi congfig.ini下目录,运行uwsgi config.ini &(&表示后台运行)
7.浏览器输入服务器的ip地址(公网ip),不出意外,搞定~~

8.写在后面
注1:若需要直接在根目录下输入nginx直接启动,还需要配置/etc/nginx/sites-available/default,使其内容与nginx.conf相同
注2:
重启uwsgi :nohup uwsgi --reload uwsgi.pid > uwsgi.log 2>&1 &
停止uwsgi :nohup uwsgi --stop uwsgi.pid > uwsgi.log 2>&1 &
开启uwsgi :nohup uwsgi config.ini > uwsgi.log 2>&1 &

华为云部署Python应用通常涉及以下几个步骤: 1. **创建云服务器**:首先登录华为云控制台,选择“计算”服务,然后选择合适的云服务器实例(如ECS)并配置好所需的资源,包括CPU、内存和存储等。 2. **操作系统安装**:在新创建的ECS上,安装支持PythonLinux发行版,比如Ubuntu或CentOS,并确保Python版本是最新的或符合你的项目需求。 3. **配置环境**:通过SSH连接服务器,安装Python和必要的库。使用`apt-get`或`yum`命令安装Python,然后使用`pip`来安装Django、Flask或其他你需要的Python框架和库。 4. **设置Python虚拟环境**:为了管理项目依赖,建议创建一个独立的Python虚拟环境,例如使用`virtualenv`或`venv`,这样可以在不破坏全局Python环境的情况下运行项目。 5. **部署代码**:将你的Python应用程序复制到服务器的适当目录下,通常是`/var/www/html`或自定义的项目路径。 6. **配置Web服务器**:对于静态文件,可以配置Apache或Nginx作为Web服务器。如果是动态应用,可以设置upstart、systemd或gunicorn等工具进行WSGI部署。 7. **防火墙设置**:确保防火墙规则允许外部请求访问你的应用服务器,可能需要开放特定的端口(如80或443)。 8. **安全性和监控**:记得设置强密码,启用安全组,安装SSL证书(如果涉及HTTPS),并配置日志记录和监控,以便及时发现和处理问题。 **相关问题--:** 1. 华为云提供了哪些Python环境支持? 2. 如何在云服务器上设置Python虚拟环境? 3. 什么情况下会使用Apache而不是Nginx作为Web服务器? 4. 如何在华为云上开启SSL加密访问? 5. 什么是WSGI部署,如何在华为云上实施?
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值