django2021年最新版教程30django项目部署到华为云(nginxuwsgimysql方式)(代码片段)

软件工程小施同学 软件工程小施同学     2022-12-09     564

关键词:

http://c.biancheng.net/view/8256.html

该web站点主要由

  • Ubuntu18.04系统、

  • python3.9.5、

  • Django3.2.3框架、

  • MySQL5.7数据库

  • nginx服务器

搭建

1. 部署架构

Django应用部署模板架构如下图:

  • uWSGI用于连接Web服务器(Nginx)和Python应用程序(Django Application)。
  • Nginx做为反向代理,处理Http请求。
  • Django Application为Python后台应用,提供服务。

2. 部署流程

服务部署的流程为:

安装相关组件(可选,且只执行一次)->启动Nginx(只执行一次)->下载并解压django项目代码包 ->重新启动服务->服务启动测试

 ​

本章阐述使用一个Demo程序,完成整个部署流程。

  1. 创建Demo程序,项目文件如下图:

  2. mysite.ini为uWSGI配置文件,内容如下:

[uwsgi]
socket= 127.0.0.1:9092
http = :9091
chdir= /home/djangoTest/mysite
module= mysite.wsgi
master= true
processes= 4
vacuum= true
# 不配置log目录,可能会导致服务访问异常
logto = /home/djangoTest/mysitemylog.log
stats=%(chdir)/mysite/uwsgi/uwsgi.status
pidfile=%(chdir)/mysite/uwsgi/uwsgi.pid

其中:

  • socket为uWSGI服务的IP和端口;
  • chdir为Django项目根目录;
  • pidfile为进程ID存储文件,用于停止服务。

重新启动uWSGI

shell命令如下:

if [ -s $uwsgiPidFilePath ]
then 
uwsgi --stop $uwsgiPidFilePath
sleep 5
fi 
nohup uwsgi --ini $uwsgiIniFilePath  &

新建主机组

https://support.huaweicloud.com/qs-deployman/deployman_qs_0001.html

一、托管代码到仓库

Django应用部署模板

https://support.huaweicloud.com/usermanual-deployman/deployman_hlp_1014.html

如何找到 Django 模型中所有名称的最新匹配项?

】如何找到Django模型中所有名称的最新匹配项?【英文标题】:HowcanIfindthenewestmatchforallnamesinaDjangomodel?【发布时间】:2012-02-2422:24:01【问题描述】:我有一个看起来像这样的django模型:classMyModel(Model):name=CharField(...)version=IntegerFie... 查看详情

Django 管理员/返回 404

】Django管理员/返回404【英文标题】:Djangoadmin/return404【发布时间】:2021-08-1804:47:53【问题描述】:在http://127.0.0.1:8000/启动开发服务器未找到:/admin/[2021年5月30日20:33:56]“GET/admin/HTTP/1.1”4042097项目/urls.pyfromdjango.contribimportadminfromd... 查看详情

0-django博客教程:前言

...程特点免费、中文、零基础,完整的项目,基于最新版Django1.10和Python3.5。带你从零开始一步步开发属于自己的博客网站,帮助你以最快的速度掌握Django开发的技巧。谁适合这个教程本教程主要面向零基础的Django新人... 查看详情

我有一点点python的基本知识(非常基本),想学一下django,请推荐几本入门的django教程,谢谢

我的Python知识是非常基本的,所以想找基本小白看的Django教程.Django基础1.视频推荐使用慕课网的两门免费在线视频课程作为入门:django初体检django入门与实践这两门课基本涵盖了Django最核心、同时也是最常用的部分,他们会给你... 查看详情

Django 教程:意外缩进错误

】Django教程:意外缩进错误【英文标题】:Djangotutorial:unexpectedindenterror【发布时间】:2014-10-0214:30:45【问题描述】:这是我的model.py代码:fromdjango.dbimportmodels#Createyourmodelshere.classPoll(models.Model):question=models.CharField(max_length=200)pu 查看详情

共享主机上的 Django 应用程序依赖项(Cpanel)

】共享主机上的Django应用程序依赖项(Cpanel)【英文标题】:DjangoappdependenciesonSharedhosting(Cpanel)【发布时间】:2021-01-0623:10:48【问题描述】:我一直在尝试使用Cpanel在共享主机中部署Django应用程序。但是每次我尝试安装google-cloud-... 查看详情

appEngine 中 Django 的最新示例

】appEngine中Django的最新示例【英文标题】:RecentexampleforDjangoinappEngine【发布时间】:2013-08-3120:02:00【问题描述】:经过两天的谷歌搜索,我找不到最近在GAE中使用Django的最小示例。大多数示例使用CGI或Python2.5(我想避免这种情况... 查看详情

Django 使用某些字段的最新值注释查询集

】Django使用某些字段的最新值注释查询集【英文标题】:Djangoannotatedquerysetwithlatestvaluesforsomefields【发布时间】:2021-05-0901:27:57【问题描述】:我有一个存储一些营销业绩的模型:classDailyPerformance(models.Model):classMeta:unique_together=(\'... 查看详情

Django检查数组内的数组并更改模板

】Django检查数组内的数组并更改模板【英文标题】:Djangocheckarrayinsidearrayandchangetemplate【发布时间】:2021-04-2516:33:34【问题描述】:我有这个数组线setime=["00:00","00:30","01:00","01:30","02:00","02:30","03:00","03:30","04:00","04:30","05:00","05:30","0... 查看详情

Django - 从每个组的最新日期检索对象 - PersonPhoto

】Django-从每个组的最新日期检索对象-PersonPhoto【英文标题】:Django-retrieveobjectsfromlatestdateforeachgroup-PersonPhoto【发布时间】:2021-11-0621:31:38【问题描述】:我的数据库包含不同人的护照图像。比如:classPerson(models.Model):passclassPerson... 查看详情

Django:每个外键返回一个过滤对象

】Django:每个外键返回一个过滤对象【英文标题】:Django:returnonefilteredobjectperforeignkey【发布时间】:2011-03-0601:14:30【问题描述】:是否可以返回每个外键只返回一个对象的查询集?例如,我想从django_cmets获取最新的cmets,但我只... 查看详情

Django 迁移问题

】Django迁移问题【英文标题】:DjangoMigrationquestions【发布时间】:2021-11-2021:39:30【问题描述】:我是Django新手,但每次对模型进行任何更改时,我都需要先执行“pythonmanage.pymakemigrations”然后执行“pythonmanage.pymigrate”makemigrations... 查看详情

表妹想学django框架,在我整理出教程后,表妹露出满眼的小星星!(代码片段)

...75,里面的资料免费发送给大家!(Python学习资料是2018年最新版)一、开始前的准备工作与初探Django? 二、创建一个Django项目? 三、查看Django项目的目录结构? 项目配置文件--setting.pysetting.py文件用来配置整个项目,里... 查看详情

django教程part1:请求与响应(代码片段)

版本说明:因为在撰写本教程的时候,正逢Django从1.11向2.0转变的时期,而教程的编写是从17年8月开始的,前后共花了5个月左右的时间,所以使用的是1.11版本,局面非常尴尬。实际上Django2.0和Django1.11对于一般使用而言,就是在... 查看详情

django入门学习规划与资料推荐

这篇文章总结了我一年多来的django学习经验,推荐一些迅速帮助你入门django学习的高质量学习资料和教程,让你在一到两个月内快速掌握基本的django开发技术,并且能够使用django发开一些小项目,例如一个博客网... 查看详情

如何在 jinja (django) 中使用 for 循环显示最新的 5 个订单

】如何在jinja(django)中使用for循环显示最新的5个订单【英文标题】:Howtodisplaylatest5ordersbyusingforloopinjinja(django)【发布时间】:2021-09-3007:25:05【问题描述】:下面的代码将显示所有订单,但现在我只想在模板中显示5个最新订单。谁... 查看详情

更改 django 默认日期模板格式

】更改django默认日期模板格式【英文标题】:changedjangodefaultdatetemplateformat【发布时间】:2019-05-2904:56:14【问题描述】:我是新手,我的日期格式为2017-12-30,但是当日期通过模板传递时,它返回2017年12月30日。我尝试这样做,但... 查看详情

模板继承不起作用 - Django 教程

】模板继承不起作用-Django教程【英文标题】:TemplateInheritanceDoesNotWork-DjangoTutorial【发布时间】:2021-12-1007:06:00【问题描述】:我关注CoreySchafer\'Djangotutorial。我已经到了必须创建base.html模板继承的地方。根据我的项目调整所有内... 查看详情