Python项目--Flask/Django框架项目部署
Django项目[*]示例开源项目:DjangoBlog
[*]项目地址:https://gitee.com/lylinux/DjangoBlog
[*]使用的Python环境:Python3.8.5使用过Python版本3.10、3.9版本是不支持这个项目的,如是测试建议使用3.8.5的Python版本。
1. 部署过程:
1.1 使用shell工具连接服务器/面板终端连接,执行命令行拉取项目资源:
cd /www/wwwroot/ && git clone https://gitee.com/lylinux/DjangoBlog.git
1.2 进入网站---Python项目内创建
1.3 等待Python项目环境创建
1.4 通过文件管理,进入到项目目录下。编辑Django/djangoblog目录下的setting.py文件,在编辑器内搜索database,修改成您自己的数据库连接方式,例如下方截图:
PS:使用的是MySQL连接方式,如是其他数据库连接方式需要修改连接引擎代码,请结合自己项目使用的数据库。
2. 生成数据
1.1 可以通过终端处理进入执行,也可以通过Xshell、Putty工具连接服务器操作
面板终端进入:
1.2 生成数据命令:/www/server/pyporject_evn/DjangoBlog_venv/bin/python3 manage.py makemigrations
/www/server/pyporject_evn/DjangoBlog_venv/bin/python3 manage.py migrate
PS:DjangoBlog_venv路径是自己的为主,通常是以项目名称命名的。
1.3 执行完上面的数据迁移后,再到Python项目内重启当前项目;在访问项目地址即可:
Flask项目:
[*]部署环境:
[*]项目名称:测试项目
[*]使用的Python版本:3.9.10
1. 部署过程
1.1 根据自己的项目启动文件选择对应的目录
1.2 测试访问
uWSGI运行方式:
[*]用途: uWSGI 是一个用于运行 WSGI 应用程序的高性能应用服务器。它支持多种协议,不仅仅局限于 Python,还可以用于其他语言的应用程序。
[*]特点: uWSGI 提供了很多高级功能,如负载均衡、进程管理、异步处理等。它还支持在不同的服务器(如 Nginx)和应用程序之间进行灵活的连接。
优点:
[*]高性能:uWSGI 以高性能著称,能够处理大量并发请求。
[*]灵活性:支持多种部署模式和协议。
[*]功能丰富:提供了许多高级功能,适用于复杂的部署场景。
缺点:
[*]学习曲线:相对于一些简单的服务器,uWSGI 的配置和使用可能需要一些学习。
[*]配置复杂:对于一些高级功能,配置文件可能变得复杂。
Gunicorn运行方式:
[*]用途: Gunicorn 是一个 Python WSGI HTTP 服务器,用于运行 WSGI 应用程序。它是一个轻量级而简单易用的服务器。
[*]特点: Gunicorn 设计简单,易于使用。它采用预创建的 worker 进程,以提高性能和稳定性。
优点:
[*]易用性:Gunicorn 的配置相对简单,适合快速部署。
[*]稳定性:通过使用预创建的 worker 进程,Gunicorn 能够提高应用程序的稳定性。
[*]中小型应用:适用于中小型应用,不需要复杂的配置。
缺点:
[*]性能:相对于一些高级的服务器,Gunicorn 在处理大量并发请求时可能略显逊色。
[*]功能较少:相对于 uWSGI,Gunicorn 提供的高级功能较少。
如何选择:
[*]复杂度和需求: 如果您的应用程序比较简单,不需要复杂的配置和高级功能,而且对于性能要求不是特别高,那么 Gunicorn 可能是更好的选择。如果您需要更高级的功能和灵活性,那么 uWSGI 可能更适合。
[*]性能和稳定性: 如果性能和稳定性是首要考虑的因素,可以考虑使用 uWSGI。它在处理大量并发请求时表现出色,并提供了更多的高级功能。
[*]学习曲线: 如果您希望快速上手并且学习曲线较低,Gunicorn 可能是更好的选择。uWSGI 的配置和功能较为复杂,可能需要一些时间来学习。
综上所述,选择 uWSGI 还是 Gunicorn 取决于您的具体需求和偏好。在实际应用中,您可能需要根据项目的性质和规模做出适当的选择。
此帖子不处理任何问题 文档能不能同步更新下,ui都变了,怎么配置都看不懂了 8.2的时候让我指定启动文件,这还好用,现在9.0怎么让我输入启动命令了,写上文件路径还报没有权限,运行不了。改的我不会用了,告诉我这么退回旧版本也行啊。全网都没有个怎么安装指定版本的命令 添加 python 项目时 , 就算是填有 requirements.txt ,也无法自动安装依赖
宝塔面板 9.1.0 本帖最后由 宝塔用户_pqeqgh 于 2024-7-3 12:26 编辑
请问如何激活虚拟环境 /www/server/pyporject_evn/website_venv/bin路径下,没有activate
# ls
2to3 ckeygen gunicorn ipython pip pydoc3.8 python3 sqlformattwistd xbrnetwork
2to3-3.8 conch hypercornipython3 pip3 pygmentizepython3.8 tkconch uvicornxbrnetwork-ui
automat-visualizedaphne idle3 mailmail pip3.8pyhtmlizerpython3.8-configtrial uwsgi
cftp django-adminidle3.8 normalizerpydoc3python python3-config twist wamp 我是谁不重要学习 发表于 2024-4-21 12:56
安装python项目模块的地方怎么找不到了?
你安装的win面板么,win没有,换linux的 安装python项目模块的地方怎么找不到了? 报错404 Not Found
nginx 宝塔用户_qrlalx 发表于 2024-5-24 22:04
报错404 Not Found
nginx
部署flask后,尝试通过公网ip访问时出现的问题 我用的是Gunicorn 部署的很稳定 你好。创建项目后的模块路径在哪 后续会支持 pipfile.lock 安装依赖吗? 9.2.0直接不会用了 9.2.0 怎么部署? 我是真搞不懂两三年了,Python项目管理怎么还这么拉胯,一个虚拟环境怎么这么难像普通的模式一样,连个activate都没有,现在的9.2.0我是可以通过source py-project-env 项目名来进入我项目的虚拟环境,可这个虚拟环境除了Python的版本是正确的,显示了这个虚拟环境名字,没有任何作用,在不在虚拟环境下,pip list都是一样的列表,我在requirements.txt中安装的依赖完全看不到,而且我配置mysql数据库,我的模块中明明已经有了mysqlclient,还是提示我没有安装,真的搞不懂 宝塔用户_amowod 发表于 2024-9-20 17:44
我是真搞不懂两三年了,Python项目管理怎么还这么拉胯,一个虚拟环境怎么这么难像普通的模式一样,连个acti ...
他们自作聪明自动帮我们安装和设置虚拟环境的位置了,我都被这个烦死了!连自己创建自己的虚拟环境都不行,有病一样!他们难道不知道很多库并不是简单的pip就可以直接安装还是把用宝塔的人当傻子对待?
页:
[1]
2