兴趣自学了 python ,现在不知道怎么部署上服务器 具体应用到什么技术栈 网上搜索了一下,还是很模糊,什么都有
1
Hopetree 259 天前
web 项目? Django fastapi flask 这些?使用 Supervisor 部署 Django 应用程序:https://tendcode.com/subject/article/Supervisor_gunicorn_django/
|
2
placeholder 259 天前
反正就是你把 build 之后的文件放到服务器上,然后运行就完事儿了。[doge]
|
4
milkpuff 259 天前
miniconda
|
5
LeegoYih 259 天前
用 Docker 方便
FROM python:3.8 WORKDIR /app COPY . /app RUN pip install --no-cache-dir -r requirements.txt EXPOSE 18000 CMD ["python3.8", "app.py"] |
6
joApioVVx4M4X6Rf 259 天前
加个专门 Python 的微信或者 QQ 群吧,v2ex 都是坏东西,你学不会的
|
7
arischow 259 天前
https://v2ex.com/t/1031166 你去问他,他说 Python 简单
|
8
v2webdev 259 天前
如果是公有云的部署环境,直接考虑 Docker 。
|
9
agegcn 259 天前 1
我是最简单的。git ,虚拟环境,systemctl 运行
|
10
taihengw 259 天前 2
这种问题现在最好的方法应该是找 ChatGPT 呀。
不过还是人工答一下,自己玩玩就直接用本地调试的方式,能跑就行,一般都是给你起个 localhost:8888 这样的端口~如果想正式部署,我用过的是 flask 框架,找个云主机,然后首先装 nginx 做代向代理,配置 nginx 把 80 端口转发到你自己定的一个端口(比如 9999 ),然后再装个 uswgi 这样的软件,这个软件会启动你的 python 服务并监听前面 nginx 转发的端口,这样就实现外部流量->80 端口->nginx 转发到 9999 端口->uswgi 软件分发给你的 python 应用去处理了 |
11
baobao1270 258 天前 2
Web 的话主要是 WSGI/ASGI 吧
Flask 有 gunicorn ,FastAPI 有 uvicorn ,都是官方推荐的 正式环境的话一般会套一个 Nginx ,用来做 load balancing 和 SSL offloading ,当然你用云服务厂的 Load Balancer 也是可以的 然后就是建议使用一个现代的包管理器,比如 Poetry 或者 PDM 跨版本部署的话用 pyenv |
12
kneo 258 天前 via Android
你自己会啥?到哪一步了不会?
都能说出“部署”这个词的,按道理说应该多少会点。 |
13
yqcode 258 天前
我有详细的 windows 搭配 apache 的方案备忘...如果需要的话可以 @我
|
15
pytth 258 天前 via iPhone
在宝塔面板上部署 Python Flask 项目主要分为以下几个步骤:
1. **环境准备**: - 确保你的开发环境中 Python 版本与宝塔面板中安装的 Python 版本一致。例如,如果你在开发环境中使用的是 Python 3.8.6 ,那么在宝塔面板中也应选择相应的 Python 版本。 - 使用`pip freeze > requirements.txt`命令导出项目依赖,并确保`requirements.txt`文件中只包含 Flask 及其基本依赖,避免不必要的依赖导致部署失败。 2. **项目上传**: - 将你的 Flask 项目文件上传到服务器的相应目录中,通常推荐上传到`www/wwwroot`目录下,以便于后续配置。 3. **安装 Python 项目管理器**: - 在宝塔面板的应用商店中搜索并安装“Python 项目管理器”插件。安装完成后,进入设置界面,选择“版本管理”并安装你项目所需的 Python 版本。 4. **添加项目**: - 在 Python 项目管理器中点击“添加项目”,填写项目名称,选择对应的 Python 版本和 Flask 框架,并设置启动方式(如 uwsgi 或 gunicorn )。 - 指定项目路径为你上传的 Flask 项目路径,设置启动文件(如`app.py`),并选择合适的端口(如 5000 或 8001 )。 5. **配置 UWSGI**: - 根据你的项目需求配置 UWSGI ,设置`chdir`为你的项目目录,`wsgi-file`为你的启动文件,`callable`为`app`(如果你的启动文件名为`app.py`)。 - 如果端口被占用,可以通过服务器终端使用`netstat -anp | grep 端口号`查看占用端口的进程,并使用`kill -s 9 进程号`来释放端口。 6. **安装并设置 Nginx**: - 修改 Nginx 配置文件,设置`server_name`为你的服务器公网 IP ,`root`为你的项目目录。 - 添加`location`配置,使用`uwsgi_pass 127.0.0.1:端口号;`指向你的 Flask 应用,确保端口号与 UWSGI 配置中的端口号一致。 - 配置静态文件服务,例如`location /static/`,设置`alias`为你的项目中的静态文件目录。 7. **端口放行**: - 在服务器的安全组设置中放行你设置的端口,确保外部访问不会受到限制。 - 在宝塔面板的“安全”或“防火墙”设置中放行相应的端口。 完成以上步骤后,你的 Flask 项目应该可以在通过服务器的公网 IP 地址访问了。如果在部署过程中遇到问题,可以参考宝塔面板的官方文档或者社区中的相关教程进行排查和解决。 |
16
macaodoll 258 天前 via Android
直接 nohup 运行就行,讲究点就 docker
|
18
ZXiangQAQ 258 天前
直接上 docker 就行,手动部署容易出现环境问题
|
19
hnliuzesen 258 天前
Cloud Flare Workers 免费的,可以试试
https://developers.cloudflare.com/workers/languages/python/how-python-workers-work/ |
20
sleepybear1113 258 天前 3
别信上面的说走 docker ,既然你是初学 Python ,那么学 docker 就是高射炮打蚊子,楼上那些说用 docker 的根本不是在解决新手的问题。
先给你几个搜索方向,首先确定你的是什么类型的操作系统,比如 Debian 、CentOS 、Ubuntu 、Windows 这种,不然安装命令都不一样。 然后去问 GPT ,“在 xxxx 系统下,如何安装 Python 3.x 版本的环境”( 3.x 指的是你用的 Python 版本)。 然后如果是国内的服务器,去搜索一下,或者 GPT 一下,“Python pip 换源阿里”的操作步骤,让 pip 走国内的源,下载快。 然后看看你本地在运行前有没有安装什么 pip 的包,如果没有的话不用管,不然就是 pip install xxxx 。 最后就是运行,python xxxx.py 运行 |
22
ohayoo 258 天前 via Android
赞成 20 楼说的
|
23
lingeo 258 天前
linux 部署:Supervisor
window 部署:nssm 完结。 |
24
bitmin 258 天前
新手自学 python ,先最低成本能跑起来就行了
部署在服务器上,如果是 web 服务 fastapi 这些,先认真看官方文档,官方文档都有介绍,例如 fastapi 专门有个章节说如何部署 https://fastapi.tiangolo.com/zh/deployment/manually/ 不知道你是啥基础,不好教,是什么计算机知识都不知道就学习 python ,还是前端学习 python ,还是后端学习 python |
26
jqtmviyu 257 天前
我是 pm2 启动服务.
设置一个 cron.json. 然后就 pm2 start cron.json, 开机自启, 定时重启, 查看日志, 都是用它. |
27
zksfyz 257 天前
1.可以先把 python 源码编译成 pyc 字节码:python -m compileall .
2.提高运行效率,并且可以简单防止源码泄露 3.supervisor 守护 python 程序进程,保证挂了会快速恢复。 |
28
xianmofeng3 224 天前 via iPhone
Docker
|