将Flask后端项目部署到云服务器上(部署过程以及踩过的坑)

将Flask后端项目部署到云服务器上(部署过程以及踩过的坑)

记录一下我的部署过程,其中包含参考其他博主的内容,仅供大家参考。


服务器

我使用的是阿里云服务器,安全配置组里配置好使用的端口号。

项目准备

项目上传之前记得要修改一下启动ip
部署到服务器上想要开放访问,需要将IP设置为0.0.0.0

if __name__ == "__main__":
    # webapp.run(debug = True,port=81)
    webapp.run(debug = True,host= '0.0.0.0', port = 81)

还要修改一下数据库的配置,配置为服务器上的数据库。

安装python环境

如果你需要的依赖中也包括mysqlclient,pandas的话,建议先看一下我的这篇记录:

链接: Linux下ModuleNotFoundError: No module named ‘_ctypes’以及ModuleNotFoundError: No module named ‘_bz2‘

  • python官网:https://www.python.org/
    下载你所需要得到python版本的Source code

  • 将下载好的python包传输到服务器上,这里我使用的是Xftp,放在了/usr/local 目录下
    进行解压 tar -Jxvf Python-3.7.8.tar.xz -C /usr/local

  • 解压得到源码后进行安装:
    切换至解压后的python主目录
    执行命令: cd /usr/local/Python-3.7.8/

  • 在python主目录Python-3.7.8下
    执行以下命令配置python:
    ./configure --prefix=/usr/local/Python-3.7.8(其中–prefix是指定python的安装路径)

  • 编译安装python
    执行命令:
    make && make install

  • 完成后执行python -V,应该显示python: command not found
    因为此时还没有配置软连接(类似wind

<think>好的,我现在需要帮助用户了解如何在腾讯云上部署Flask后端服务。用户已经提供了一些相关的引用内容,我需要根据这些信息整理出一个清晰的步骤指南。 首先,我应该回顾用户提供的引用内容。引用[1]提到腾讯云服务器的简单部署Flask,引用[4]详细说明了使用Python+Flask编写后端部署到腾讯云轻量服务器,操作系统是Ubuntu 18.04。引用[2]和[3]虽然提到阿里云和微信云托管,但可能对腾讯云的步骤有参考价值,比如购买服务器的流程类似。 接下来,我需要确定用户的需求是部署Flask到腾讯云,所以重点应放在引用[1]和[4]的内容。需要分步骤说明,可能包括:购买服务器、环境配置、上传代码、安装依赖、设置运行环境、配置安全组、域名绑定等。 要注意用户可能对服务器操作不熟悉,所以步骤要详细,比如如何连接服务器,如何安装必要的软件如Python、pip、虚拟环境等。同时,代码部署部分需要指导如何将本地项目上传到服务器,可能使用Git或SCP命令。 另外,安全组的配置是关键,确保端口开放,允许外部访问。引用[4]提到使用Ubuntu系统,所以相关命令需要符合该环境。可能还需要指导如何设置Gunicorn或Nginx作为生产服务器,但根据引用内容,用户可能只需要基础部署,所以先以简单的方式启动Flask应用,再提到生产环境的优化建议。 需要检查是否有遗漏的步骤,比如防火墙设置、依赖安装、虚拟环境的使用。同时,要确保所有命令正确无误,适合Ubuntu系统。最后,添加常见问题,帮助用户解决可能遇到的错误,比如端口占用、依赖缺失等。 现在组织这些信息,按逻辑顺序分步骤说明,确保用户能一步步跟随操作。同时,根据用户提供的引用,正确标注引用来源,例如在购买服务器和轻量服务器部分添加引用标记。保持语言简洁明了,避免技术术语过多,必要时解释命令的作用。</think>以下是在腾讯云上部署Flask后端服务的分步指南: ### 一、购买与配置云服务器 1. **选择服务器类型** 推荐腾讯云轻量应用服务器(适合小型项目),价格亲民且预装应用镜像[^4]。 进入腾讯云官网,选择「轻量应用服务器」-「应用镜像」-「Ubuntu 18.04/20.04」。 2. **安全组配置** 在服务器控制台找到「防火墙」或「安全组」,添加规则开放以下端口: - 80(HTTP) - 443(HTTPS) - 自定义Flask端口(如5000)[^1] --- ### 二、连接服务器 使用SSH工具(如PuTTY或终端)连接: ```bash ssh ubuntu@your_server_ip # Ubuntu系统默认用户名为ubuntu ``` --- ### 三、部署环境搭建 1. **安装基础依赖** ```bash sudo apt update sudo apt install python3-pip python3-venv git ``` 2. **创建虚拟环境** ```bash python3 -m venv venv source venv/bin/activate ``` --- ### 四、项目上传与依赖安装 1. **上传代码** 使用`scp`命令或Git克隆项目服务器: ```bash git clone your_project_git_url ``` 2. **安装依赖包** ```bash pip install -r requirements.txt pip install gunicorn # 推荐生产环境使用 ``` --- ### 五、启动Flask应用 1. **测试运行** ```bash export FLASK_APP=app.py # 替换为你的入口文件 flask run --host=0.0.0.0 --port=5000 ``` 此时可通过`http://服务器IP:5000`访问服务[^4] 2. **生产环境部署(可选)** 使用Gunicorn+Nginx: ```bash gunicorn -w 4 -b 0.0.0.0:5000 app:app ``` --- ### 六、绑定域名(可选) 在腾讯云域名控制台添加A记录解析到服务器IP,并通过Nginx配置反向代理。 --- ### 常见问题排查 - **端口不通**:检查安全组规则和系统防火墙(`sudo ufw status`) - **依赖缺失**:确认虚拟环境已激活,且`requirements.txt`包含所有包 - **权限问题**:使用`sudo chmod -R 755 your_project_folder`调整权限
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值