Flask项目部署到阿里云服务器(全网最清晰简单完整部署),linux命令和脚本文件 nginx安装到服务器等每一步清晰记录

发布时间:2026/10/21 13:46:50

Flask项目部署到阿里云服务器(全网最清晰简单完整部署),linux命令和脚本文件 nginx安装到服务器等每一步清晰记录 目录一、获取免费阿里云服务器二、远程控制阿里云服务器三、安装nginxweb服务器1. 更新系统软件包2. 安装EPEL存储库3. 安装Nginx4. 启动Nginx服务并设置开机自启5. 验证Nginx安装四、安装python虚拟环境1.检查系统是否已安装Python3及其pip3:2. 创建Python虚拟环境3. 激活虚拟环境4. 安装项目所需Python包5. 退出虚拟环境五、导入项目文件1. 确保虚拟环境已激活2. 配置nginx3. 确保flask项目中入口文件host0.0.0.0’4. 将本地flask项目文件包括源代码、配置文件、静态资源等复制到虚拟环境所在的目录下5. 在虚拟环境中安装Gumicorn* *一、获取免费阿里云服务器----------------没有服务器的话可以在阿里云获取免费服务器阿里云-计算为了无法计算的价值二、远程控制阿里云服务器----------------本文使用的XShell7三、**安装nginx*web服务器**-------------------------------------在部署flask项目时候因为flask是一个轻量级的Python Web框架其本身并不包含一个成熟的Web服务器组件而是依赖于内置的简易服务器werkzeug### 1. 更新系统软件包 sudo yum update### 2. 安装EPEL存储库 sudo yum install epel-release### 3. 安装Nginx sudo yum install nginx### 4. 启动Nginx服务并设置开机自启 sudo systemctl start nginx为了让Nginx在系统启动时自动运行执行 sudo systemctl enable nginx### 5. 验证Nginx安装(1) 命令行检查Nginx服务状态 sudo systemctl status nginx(2) 浏览器访问服务器的公共IP地址Nginx默认监听在80端口外部想使用nginx就需要云服务器开发80端口在云服务器控制台的左侧导航栏找到安全组点进安全组点进后点击手动添加授权策略默认允许优先级默认默认1协议类型默认TCP端口 80 授权对象0.0.0.0/0。表示允许所有外部IP地址访问然后点击保存。如果不能访问可能是防火墙的问题关闭防火墙或者允许nginx端口。四、安装python虚拟环境--------------------------### 1.检查系统是否已安装Python3及其pip3: python3 --version pip3 --version如果没有安装或版本过低 sudo yum install python3 python3-devel python3-pip### 2. 创建Python虚拟环境在root目录下创建一个新的虚拟环境 mkdir my_flaskProject cd my_flaskProject python3 -m venv my_venv这里my_venv是虚拟机环境的名称可以自己命名。### 3. 激活虚拟环境 source my_venv/bin/activate激活后命令行提示符前会显示虚拟环境的名字my_venv,这表明当前正处于此虚拟环境中运行命令此时安装的Python包将只在这个环境中生效不会影响全局Python环境。### 4. 安装项目所需Python包在虚环境中可以使用pip安装Flask和其他项目依赖 pip install Flask pip install -r requirements.txt # 如果存在requirements.txt文件### 5. 退出虚拟环境完成开发或部署任务后要退出当前虚拟环境只需运行 deactivate五、导入项目文件------------### 1. 确保虚拟环境已激活如果未激活 source /root/my_flaskProject/my_venv/bin/activate可能会提示错误信息Permission denied 表示当前没有足够的权限来执行 activate 脚本运行如下命令 chmod x /root/my_flaskProject/my_venv/bin/activate赋予 activate 脚本执行权限再次激活前面出现my_venv激活成功### 2. 配置nginx编辑Nginx的服务器配置文件通常位于/etc/nginx/sites-available/目录下**如果没有sites-available这个目录可按照如下进行配置**打开/etc/nginx/nginx.conf文件在http{…}块内添加 server { listen 80; # 监听公网端口此处为标准HTTP端口80 server_name your_domain.com; # 替换为您的域名或公网IP location / { proxy_pass http://localhost:5000; # 替换为项目实际监听的本地端口 proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-ProtoKaTeX parse error: Expected EOF, got } at position 14: scheme; }̲ }这段配置是告诉Ngi…working_directory # 设置环境变量如果适用 export FLASK_APPmyflask.py export FLASK_ENVproduction# 启动Gunicorn指定监听地址和端口以及应用入口点 exec gunicorn --bind 0.0.0.0:5000 myflask:app给启动脚本赋予权限 chmod x gunicorn_start.sh启动Gunicorn服务 ./gunicorn_start.sh成功后可以查看进程然后在nginx.conf配置刚刚在导入项目时其实已经配置过… server { listen 80; # 监听公网端口此处为标准HTTP端口80 server_name 114.55.118.198; # 替换为您的域名或公网IP location / { proxy_pass http://localhost:5000; # 替换为项目实际监听的本地端口 proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; proxy_redirect off; proxy_buffering off; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection “upgrade”; proxy_read_timeout 600s; } }完成配置后执行以下操作以检查配置文件的正确性并重启Nginx服务 sudo nginx -t sudo systemctl restart nginx启动Gunicorn服务 通过执行该脚本来启动Gunicorn服务如果先前有运行的端口占用杀死进程重新启动打开公网地址成功
延伸阅读

更多相关文章

2026/10/20 3:37:12

保护地土方作业怎么管?从评估到修复的施工指南

前阵子一条关于国家公园的新闻让不少人看愣了:推土机开进保护区,地表被翻出大片痕迹,舆论立刻炸开。这件事放在工程视角看,核心不是“该不该用机械”一句话能说清,而更像一次典型的保护区土方作业失序:边界…

2026/10/20 21:18:18

基于BiLSTM-CRF的端到端语义角色标注:从原理到实践

简介:语义角色标注是自然语言处理中的一项核心语义分析任务,旨在识别句子中谓词与相关成分之间的语义关系,如施事者、受事者、地点等。其原理是通过模型自动分析句法结构,为句子中的每个成分分配一个语义角色标签,从而…

2026/10/21 18:32:38

自建2000张拖拉机数据集:从VOC转YOLO到目标检测模型训练实战

前段时间在做一个农机目标检测相关的项目,需要训练一个能稳定识别田间拖拉机的视觉模型。翻了几个主流数据集平台后发现,通用目标检测数据集里几乎没有专门的拖拉机类别,就算有那么几张,也都是零散出现在街景或农业展会照片里&…

2026/10/21 18:32:38

AI Agent技能体系设计:从原子工具到可编排技能库

接手一个“智能体”相关的项目,我最先做的往往不是选模型、调Prompt,而是先看它的“技能”是怎么组织的。模型本身决定的是智商上限,而技能体系决定的是它能干多少活、干活靠不靠谱,这直接关系到最终交付给用户的是一个能解决实际…

2026/10/21 18:32:38

Python虚拟环境完全指南:venv与conda创建、查看、删除实操

我前阵子带几个做深度学习方向的同学搭实验环境,发现十个有八个都卡在第一步——不是 torch 和 tensorflow 装进同一个环境里互相打架,就是 pip 装了一堆包最后自己都分不清哪个项目在用哪个。说到底,都是没把虚拟环境这层基本功打牢。别人都…

2026/10/21 18:32:38

Agent-Skills工程化:可测试、可编排、可运维的AI能力单元设计

1. 项目概述:从“agent-skills”这个词组看懂当前技术落地的真实切口最近在多个技术社区、开源仓库和工程团队的内部分享里,频繁看到“agent-skills”这个组合词——它既不是标准术语,也不属于任何教科书定义,但恰恰是当下一线开发…

2026/10/21 18:32:38

深度学习虚拟环境管理全攻略:conda与venv的创建、查看与删除

1. 先从一场环境灾难说起 做深度学习实验的人,十有八九都经历过这种崩溃瞬间:上个月用某框架跑通的项目,这个月打开突然报 ImportError ,一查发现是依赖包版本被其他项目悄悄"升级"了;或者新拉下来的代码要…

2026/10/21 18:27:26

LiteLLM:大模型调用层的标准化中间件

1. 为什么“litellm”突然在开发者圈里高频出现——它不是新模型,而是新范式 最近两周,好几个不同技术背景的朋友都在 Slack 群、内部分享会甚至咖啡闲聊中提到 “litellm” 这个词。有人问:“这玩意儿是不是又一个大模型?” 有人…

2026/10/21 4:53:08

金融AI落地指南:从调研报告到技术选型与工程实践

简介:这份PDF报告聚焦2025年金融服务业中国AI现状与趋势,面向金融科技从业者、AI战略规划人员及关注行业数字化转型的研究者,帮助读者把握生成式AI在银行、支付、交易等场景中的落地路径与投资方向。资源包内含1个PDF文件,大小约1…

2026/10/21 0:00:35

交通流仿真实战:IDM跟驰与MOBIL换道模型参数调优与避坑指南

简介:这份资源是面向交通工程学习者与Python开发者的微观交通流仿真项目,核心实现智能驾驶模型(IDM)下的车辆跟驰与换道行为,可用于理解速度、密度与流量之间的动态关系,适合具备Python基础、希望深入交通模…

2026/10/21 0:00:35

揭穿智能体表面顺从:用追踪代码重建任务执行确定性

1. 表面顺从不是智能体的“礼貌”,而是任务执行链路上的隐性断点最近在调试一个跨平台长周期任务调度系统时,我反复遇到一种令人困惑的现象:智能体在用户指令发出后,几乎秒级响应“已收到”“正在处理”“请稍候”,UI上…

2026/10/21 0:00:35

统一内存+量化:锐龙AI Max PRO 400如何本地跑320B大模型

这段时间硬件圈和AI圈都在传一个事:AMD锐龙AI Max PRO 400系列把最高192GB统一内存搬进了PC形态的产品里,按宣传口径,本地跑320B参数的大家伙不再是纸面概念。我第一反应倒不是“内存真大”,而是这话背后的含金量——它把过去只能…

还想了解更多?直接咨询顾问

免费诊断 + 免费方案 + 透明报价。

全国咨询热线400-8866-253
免费获取方案
☎咨询二维码 ☎ ↑