腾讯云部署flask+gunicorn

一  ssh连接服务器

1、拿到服务器后进行密码修改,这里假设是password

2、在 防火墙 中添加端口,为后面的端口使用

3、下载Termius(ssh连接工具,也可以用电脑自带的终端)

下载地址:https://www.termius.com/

点击主页面 +NEW HOST ,弹出添加的侧抽屉

这里需要关注的地方:

  • Address 填写你的服务器IP地址
  • Port 默认22 不需要修改 腾讯云默认启动的22端口
  • Username:默认账号应该是 root
  • Passwork:就是上方第一步你在腾讯云设置的密码 password

ip和账号密码没问题这时候就连接成功了

二 上传flask代码

如果没有代码可以去使用这面这个flask DemoGitHub - caozhengbo/ZhihuJianMingJiaoCheng: https://zhuanlan.zhihu.com/jianmingjiaocheng

把代码下载的服务器,也可以在下载到本地在传到服务器,方式有很多种

git clone git@github.com:caozhengbo/ZhihuJianMingJiaoCheng.git

三  安装flask和gunicorn

在python3环境下安装flask和gunicorn

python3 -m pip install flask
python3 -m pip install gunicorn

这里可能会有的一个坑,安装完gunicorn后 无法在终止去直接执行

解决办法:在终端去执行  export PATH=$PATH:/usr/local/python3/bin

这样只能生效这一次,下次连接服务器需要重新去执行,可以把这行代码写入到

vim ~/.bash_profile 这个文件  写完之后一定要记得 source ~/.bash_profile 不然不会生效

四  启动falsk+gunicorn服务

  1. 添加指定需要开放的端口:firewall-cmd --add-port=5000/tcp --permanent
  2. 重载入添加的端口:firewall-cmd --reload
  3. 查询指定端口是否开启成功:firewall-cmd --query-port=5000/tcp
  4. 进入到代码的目录下,执行gunicorn -w 2 -b :5000 app:app    启动gunicorn服务
    1. 第一个app是falsk入口
    2. -w指的是处理请求的进程数
    3. -b指的是绑定本机的ip
  5. 这个时候在终端就已经可以看到任务移动启动了
    1. Listening at: http://0.0.0.0:5000 (2948)

这个时候打开你的浏览器 运行 http://服务器的公网IP:5000,大功告成

这个可能会有一个小问题:添加指定端口的时候提示FirewallD is not running

解决方案:重新启动下服务  systemctl start firewalld(无次问题请忽略)

下面下运行gunicorn服务的终端

### 部署Flask应用程序至腾讯云服务器 #### 使用宝塔Linux面板简化部署流程 为了更简便地管理与部署Flask应用,在腾讯云服务器上安装并使用宝塔Linux面板是一个明智的选择[^1]。此面板不仅提供了图形化的界面来减少命令行操作的需求,还支持多种编程语言环境的一键部署功能。 #### 创建Python项目 在宝塔面板中新建一个Python项目用于承载Flask应用。这一步骤涉及指定项目的根目录位置(通常位于`/www/wwwroot`),以及设置运行所需的Python版本和其他必要参数[^2]。 #### 设置Nginx反向代理服务 对于Web应用来说,配置Nginx作为前端的反向代理是非常常见的做法。通过这种方式可以让Nginx处理静态文件请求并将动态内容请求转发给后端的uWSGI或Gunicorn等WSGI容器去执行具体的业务逻辑[^3]。 #### 安全考虑:开放必要的网络通信端口 确保安全组策略允许外部访问应用监听的服务端口号非常重要;当创建Python项目时可以选择让宝塔自动完成这项工作,如果忘记勾选,则需手动前往防火墙模块添加对应规则[^4]。 ```bash # 示例代码片段展示如何启动 Flask 应用程序 (假设已正确设置了 WSGI 文件路径) from flask import Flask app = Flask(__name__) @app.route('/') def hello_world(): return 'Hello, World!' if __name__ == "__main__": app.run(host='0.0.0.0', port=8080) # 注意调整host和port以匹配实际需求 ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

菜里亚批

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值