【学习心得】如何用uwsgi快速部署Django

这篇具有很好参考价值的文章主要介绍了【学习心得】如何用uwsgi快速部署Django。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

问题描述:有时候,只想快速的部署一个Django项目实现项目迭代开发。本文介绍不使用Nginx只用uwsgi如何实现Django项目的快速部署。

一、安装uwsgi

# 在进入虚拟环境的情况下
pip install uwsgi

如果还不会创建Ubuntu中的Python虚拟环境,可以参考我之前的文章:

【学习心得】Linux下的Python虚拟环境搭建_linux python虚拟环境搭建

二、启动uwsgi

1、直接命令启动

优点:最简单

缺点:无法后台运行,无法记录日志

# 在你的工程项目目录下执行
uwsgi --http 0.0.0.0:80 --file 主APP文件夹/wsgi.py
# 如果不行的话,前面加上sudo
sudo uwsgi --http 0.0.0.0:80 --file 主APP文件夹/wsgi.py

-- http 0.0.0.0:80                   

        指定访问主机地址(0.0.0.0代表任何主机都可以访问)和端口号,可以简写为 :80

--file 主APP文件夹/wsgi.py     

        是你wsgi.py文件所在位置,一般是主应用文件夹下

2、通过配置文件uwsgi.ini启动

创建配置文件并写入下面这些内容。把uwsgi.ini配置文件放与在manage.py同级。

[uwsgi]
# 设置访问主机IP和端口
http = 0.0.0.0:80

#指定与Nginx通信的方式,不影响uwsgi本身运行。如果配置了需要到nginx中进行相关配置-才能通过nginx访问Django
# socket = 127.0.0.1:8001

#django项目目录,与manager.py同级
chdir = /home/ubuntu/DjangoWebProject/项目名称/

#主应用中的wsgi,下面这种配法是在Django根目录下运行uwsgi有效,主APP名为有settings.py的那个目录名。如果是其他目录运行,下面建议写成绝对路径。
wsgi-file = 主APP名/wsgi.py

# 启动一个master进程,来管理其余的子进程
master=true
processes = 2   # 一般CPU是几核就开几个
threads = 2

#服务停止时自动移除unix Socket和pid文件
vacuum = true

#设置后台运行保存日志。只要配置了daemonize就会让uwsgi后台运行,同时将日志输出到指定目录
daemonize = /home/ubuntu/DjangoWebProject/项目/log/uwsgi.log
logto = /manage.py文件所在文件夹/log/uwsgi.log
# 上面这两个的路径是一样的,只是我描述的方式不同


#保存主进程的pid,用来控制uwsgi服务
pidfile=/tmp/你自己取一个名字.pid
#uwsgi --stop/reload /tmp/可以是master.pid 停止/重启uwsgi

3、通过配置文件启动的命令文章来源地址https://www.toymoban.com/news/detail-519387.html

# 如果运行不成功可以加上sudo
sudo uwsgi --ini uwsgi.ini

三、重启或停止uwsgi

1、启动命令

uwsgi --ini  uwsgi.ini

2、停止命令

# 要想用这个命令前提是,你配置文件写了vacuum和profile
uwsgi --stop /tmp/master.pid

3、重启命令

# 要想用这个命令前提是,你配置文件写了vacuum和profile
uwsgi --reload /tmp/master.pid

4、用杀死进程的方式关闭uwsgi

# 第一步先查询进程号PID
ps -ef | grep uwsgi
# 第二步关闭进程
kill -9 uwsgi_pid

到了这里,关于【学习心得】如何用uwsgi快速部署Django的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • linux centos7 django uwsgi 部署

    安装这里就不多说,直接配置问题及所遇到问题总结 django 项目 manage.py目录新建uwsgi.ini文件 uwsgi配置 [uwsgi] socket = 127.0.0.1:9000 # uwsgi直接访问用http,nginx访问用socket http= 127.0.0.1:9000 chdir = /usr/local/www/项目目录 wsgi-file = /usr/local/www/项目目录/项目目录/wsgi.py module = 项目目录.wsgi

    2024年01月21日
    浏览(47)
  • Django笔记四十四之Nginx+uWSGI部署Django以及Nginx负载均衡操作

    本文首发于公众号:Hunter后端 原文链接:Django笔记四十四之Nginx+uWSGI部署Django以及Nginx负载均衡操作 这一篇笔记介绍如何使用 Nginx + uWSGI 来部署 Django。 上一篇笔记中有介绍直接使用 uWSGI 作为 web 服务器来部署 Django,这一篇笔记介绍如何使用 Nginx 来部署。 使用 Nginx 来部署相

    2024年02月05日
    浏览(56)
  • Django使用uwsgi+nginx部署,admin没有样式解决办法

    若在服务器上部署的项目admin没有样式,则检查下一下配置: settings uwsgi.ini urls nginx.conf } 如果使用了虚拟环境则修改nginx.conf文件中的/static/路径为你虚拟环境的路径,没有使用虚拟环境则改为你python安装路径下的static 修改完后,cd/usr/sbin,使用./nginx -s reload,重启nginx,重启项目

    2024年02月14日
    浏览(42)
  • Ubuntu纯净服务器系统使用Nginx+uwsgi部署django项目

    当前文章依赖最新的ubuntu-22.04.3-live-server-amd64服务器系统,python3-10版本,django为5.0版! 该服务器系统我们可以通过虚拟机来在本地安装,也可以使用云服务器,操作方式方法大同小异! 这里我们以开源项目baykeshop为基础来演示! 开源地址:baykeShop: baykeshop是一款python栈采用

    2024年01月17日
    浏览(48)
  • 2-Docker-应用-多容器部署Django+Vue项目(nginx+uwsgi+mysql)

    基于Linux CentOS 7系统(虚拟机),使用Docker,多容器部署Django+Vue项目 整体部署用到了:Django+Vue+nginx+mysql+uwsgi 先每一个容器单独部署,最后用Docker compose 语法整合,统一部署 参考文章:https://blog.csdn.net/qq_45445505/article/details/135563784 章标题:Docker介绍 节标题:Docker安装 总结梳

    2024年03月10日
    浏览(102)
  • nginx uwsgi配置django

    uwsgi文件 nginx.conf electric目录 nginx access.log查看 技术无止境

    2024年02月15日
    浏览(49)
  • 【零基础入门学习Python---Python网络编程之django快速入门实践】

    🚀 Python 🚀 🌲 算法刷题专栏 | 面试必备算法 | 面试高频算法 🍀 🌲 越难的东西,越要努力坚持,因为它具有很高的价值,算法就是这样✨ 🌲 作者简介:硕风和炜,CSDN-Java领域优质创作者🏆,保研|国家奖学金|高中学习JAVA|大学完善JAVA开发技术栈|面试刷题|面经八股文|经验

    2024年02月16日
    浏览(42)
  • Django+Nginx+uWSGI+Supervisor实战

    大家好,真的是许久没有更新文章了,甚是想念,最近这段时间事情很多,家里的事情、工作的事情,真没有太多时间去码文章,其实已经搁置了些许文章,没有整理,趁着这段时间风平浪静,我还是不忘初心,给大家分享。 唠嗑下网络自动化(NetDevOps): 为什么要讨论这个,

    2024年02月09日
    浏览(46)
  • 设置nginx连接uWSGI的配置(nginx-uwsgi-django)

    1:non_idempotent是指POST、LOCK、PATCH请求方法的处理。 2:uwsgi_cache与uwsgi_store指令不可在同一指令域中同时使用。 3:除uwsgi_cache_path指令外,uWSGI模块指令均可编写在http、server、location指令域中。 4:uwsgi_cache_path指令只能编写在http指令域中。 uWSGI模块配置指令 指令名称 指令值格式 默

    2024年02月17日
    浏览(53)
  • 【python】Django——django简介、django安装、创建项目、快速上手

    笔记为自我总结整理的学习笔记,若有错误欢迎指出哟~ 【Django专栏】 Django——django简介、django安装、创建项目、快速上手 Django——templates模板、静态文件、django模板语法、请求和响应 Django——连接mysql数据库 Django 是一个高效、功能强大的 Web 应用程序框架,采用 Python 编写

    2024年02月20日
    浏览(54)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包