当前位置: 首页 > 网络应用技术

如何打包Django包装和部署(2023年的最新答案)

时间:2023-03-06 21:36:55 网络应用技术

  简介:许多朋友问有关Django如何打包和部署的问题。本文的首席执行官注释将为您提供一个详细的答案,以供所有人参考。我希望这对每个人都会有所帮助!让我们一起看看!

  Django部署也非常方便。我使用了以下三种方法,这些方法适用于特定场景。

  不要看不起Django自己的服务器。命令解决部署问题。尽管性能不高,但某些场景和此方法最合适。Runserver0.0.0.0:80可以打开LAN中的Django服务,这适用于不需要用户和性能要求的场景。

  您可以使用apache+mod_wsgi或iis+wfastcgi部署。相比之下,IIS更方便,毕竟,Microsoft拥有自己的工具。

  最广泛使用的是Nginx+UWSGI的部署方法。还有许多教程。此外,Docker的一个单击部署正在节省时间和精力。

  我的是Centos系统

  我们通过Tencent的控制台的登录按钮输入远程登录接口,如图1所示,如图1所示。图2是登录后的密码输入窗口,图2是密码输入窗口

  输入登录接口后,它将在图3中。我们输入LS并发现没有文件。输入PIP列表将提示未安装PIP。进入Python时

  1.首先,我们必须安装PIP并根据自己的系统进行选择

  CentOS系统:Sudo Yum安装Python Python Pip

  Ubuntu系统:sudo apt-get安装python python pip

  安装后,PIP列表,查看可用的Python安装软件包

  2.安装Django

  我安装的Django版本是1.9.8。根据我自己的情况,随后的版本编号已更改

  sudo pip安装django == 1.9.8

  图4中可能存在此类问题,因为我们的PIP版本太低,请根据提示直接升级PIP

  更新PIP后,安装可能如图5所示。我们不会将空气添加到==中,因为添加空间会导致无法识别Django的版本。

  安装后,您将找到找不到Django的地方。实际上

  /USR/lib/python2.7/site-packages/

  我们想执行命令以在Django的bin目录中创建Django,如图6所示

  /USR/lib/python2.7/site-packages/django/bin

  输入此目录,运行django-admin.py startproject firstProject创建一个firstProject项目。第一个项目将在此目录中创建,输入项目,运行Python Manage.py Runserver.py Runserver.py Runserver.py

  问题到了。运行后,不要单击。这不能输入。我们应该通过Tencent Cloud的公共网络IP访问网站,但是有些学生发现不可能通过公共网络的IP访问我们的网站。因为他的腾讯云没有打开相应的端口,因此无法访问他安全组选项中的开放端口,如图7所示

  输入安全组,建立我们的开放端口,然后我打开端口80。如图8所示

  开放端口后,我们重新python manage.py runserver 0.0.0.0:80,如图9所示

  通过公共网络IP,您可以直接访问我们的网站。如图10所示

  1.应用程序应用程序需要哪种云服务器?为了帮助您了解如何使用阿里巴巴云服务器和相关应用程序,阿里巴巴云的移动云团队已经开发了一个简单的应用程序应用程序:移动云专辑,它将ECS用于API服务部署云专辑(图片信息呼叫,图片,图片,图片清单呼叫)和图片缩小图处理处理,因为此应用程序服务器使用Java语言开发,因此在其上安装了Tomcat来部署应用程序。特定部署1)远程登录:之后首次购买ECS,ECS服务器的根帐号和密码将发送到买方的邮箱,然后买家可以通过远程登录到ECS服务器。特定的遥控登录可以参考以下内容:Windows:中国//help.aliyun/manual?spm = 5176.383518.5.16.4llzznhelpid=59 linux:中国//help.aliyun/Manual/Manual/Manual?2)根据自己的应用程序特征安装Web环境。安装相关的网络服务器Tomcat或Jetty,Alibaba Cloud提供了龙安装部署脚本,为开发人员提供了更多方便,请参阅以下链接:中国//help.aliyun China China/manual?spm = 0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0。0.0.0.0.0.0。0.0.0.0.0.0.0.0.0.0.0.0。0.0.0.0.0.0.0.0.0.0.0。0.0.0.0.0.0.0.0.0.0。0.0.0.0.0.0.0.0.0.0.0。0.0.0.0.0.0.0.0.0.0.0.0。0.0.0.0.0.0 = 129 3)包装应用程序将Web源代码下载到局部区域,并使用命令mvnpackage制作战争软件包。如果不是Maven项目,则可以使用ANT来制作战争包。4)上传战争包Linux可以通过SFTP上传,将战争软件包上传到指定目录进行减压,请参阅特定用法方法:中国//help.aliyun Chine/Manual?SPM = 0.0.0.0.0.0.0.0.0.0.0.0。0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0..0.0..0..0..b0.0..b0.0.b0.0.b0.ite.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0..0.0..0.b0.0..0.t.0.0.0.0..0.0..0..0..0..an。0.01848 5)启动Web服务以启动Tomcat或Jetty Service 6)配置落后中国,特定配置信息的绑定域名参考:中国//help.aliyun中国/手册?help.aliyunchina /manual?spm = 0.0.0.0.0.mkbfj1helpid = 65 2,应用程序应用程序如何将图片保存到云存储服务器中?小文件。当文件数量较大时,文件直接存储在硬盘上,以极大地影响应用程序的访问效率。AlibabaCloud Storage Service Service OSS在存储和管理大型小文件方面具有很大的优势。图片不会从服务器下载,减少服务器压力。AlibabaCloud的OSS备份机制也可以保证文档的存储安全性。它的存储容量可以无限扩展。每秒请求数超过50,000。多行BGP中国,以确保进入该国所有地区的访问权利。SDK(Java版本下载地址:中国//bbs.aliyun Chine /Job.php?=下载= 38817帮助:中国//Aliyun_portal_storage.oss.aliyuncs Chine /oss_api/oss_api/oss_avahtml/index.html)。以下是Ali Cloud的OSS上传图片的代码示例:StringUp。= ossclient.generaateuploadurl(startants.server_url.genate_url,filename,filename,null);int状态= ossclient.uploadfile(uploaduri,path);3,如何在云之后使用云数据库?为了帮助您了解如何使用Alibaba Cloud Server和相关应用程序,Alibaba Cloud的移动云团队已经开发了一个简单的应用程序应用程序:移动云专辑,该专辑使用了提供的MySQL服务RDS。数据库主要存储由用户上传的用户上传的图片, 包括原始地图的信息和存储地址以及存储地址,通过Web -End API向客户端提供数据调用。AlibabaCloud RDS和本地数据库的使用基本上没有什么不同。示例示例如下:1)创建数据库实例以使用阿里巴巴云帐户购买RDS,您可以创建数据库实例。2)创建数据库并管理帐户创建数据库名称并管理用于呼叫数据库连接的应用帐户号。3)访问数据库:创建数据库(测试)后,将帐户添加到数据库测试中:测试,密码:测试,您可以在RDS控制台上检查数据库相关的信息,该信息可以获取数据库的外国中文地址,例如:xxxx.mysql.rds.aliyuncs中国,您可以使用应用程序连接数据库。javajdbc连接到数据库示例代码如下:字符串url =“ jdbc:mysql://xxxx.mysql.rds.aliyun:3306/test”;字符串用户名=“ test”;字符串密码=“ test”;尝试{连接con = drivermanager.getConnection(url,用户名,密码);} catch(sqlexception e){e.printstacktrace();

  后端使用的DRF是UWSGI+NGINX

  输入服务器项目文件目录,我的django项目放置在“/usr/myprojects/” directory.create uwsgi.ini文件中的uwsgi.ini文件中。

  测试效果命令:

  如果您访问:xxx.xxx.xxx.xx:8000成功,那么uwsgi.ini配置成功

  我的nginx.conf位置是“ /etc/nginx/nginx.conf”

  配置文件如下:

  1.第一行

  主要是给予NGINX加权。部署历史记录路线后,将删除地址背后的“#”号码。包装部署后,将会有一个错误。

  2.如果显示配置,则有两个服务器部署了前端服务和后端服务。值得注意的是,两台服务器使用同一服务器,这与侦听不同。

  3. VUE部署需要注意反向代理地址:

  和随后的端口问题

  4.后端服务器需要注意该位置的UWSGI_Pass后面的最终口号。

  5.交叉 - 域问题。如果我需要在自己的在线上找到配置,我没有遇到它,因为我在Django的设置中配置了交叉域。

  6. Django Suit背景管理样式已经崩溃,需要更改,但是可以正常访问API。

  7.我开始在后台收听端口8008,并在前端监视端口80中听,以便前端显示出良好的外观。尽管可以正常访问背景API,但VUE的本地开发环境也可以正常运行,并且文本和图片资源都正常显示。结果,它无法显示。对于地图,我选择了前面- 末端监视器以收听端口8008,后端监视80,并且显示后显示正常。原因尚不清楚////////// erly谈论它。

  8.不要问我为什么我将前端和后端分开并在服务器上部署?糟糕,只是测试,这不是必需的

  9.本文仅适合入门

  关于Django的后台管理员(西装)修改(参考:Django中文网站:)

  在环境中输入项目目录,您需要收集CSS样式并在终端中输入命令:

  接下来,您可以找到静态文件包含CSS文件。此时,该网站已打开,样式显示正常

  UWSGI启动xxx.ini后,将在同一目录中生成xxx.pid文件。UWSGI主要过程的过程数中只有一行内容。

  关于UWSGI,输入同一目录

  课

  如果您无法获得环境,请指定环境

  另外:请记住重新启动UWSGI并重新启动NGINX。

  暴力删除:Fuser -K 80/TCP

  Netstat -aptn命令行,检查所有开放端口号码

  netstat -tlp |GREP 80查看是否使用了特定端口

  PS -EF |grep uwsgi查看是否存在UWSGI端口

  python使Exe可执行文件使用Pyinstaller

  Python可以在Windows下生成EXE格式:PY2EXE众所周知。今天,我想介绍Pyinstaller。该工具可用于整个平台。我使用Python为公司同事制作工具程序。由于该公司使用了许多Mac Linux窗口,因此它已将其用于将程序制成可执行文件,这将是不错的,但是它将在Linux平台上使程序和MacThe平台启动较慢(Windows速度更快),很快),但这基本上足够了。

  安装Pyinstaller后,您可以启动。

  1.使用pyinstaller生成可执行文件

  1.1将文件依靠到文件夹:

  pyinstaller -d -w main.py #replace main.py到您的主入口python文件。

  -w参数代表main.py是一个窗口程序。

  1.2将所有因文件包装到同一可执行文件中:

  pyinstaller -f -w main.py

  2.研究Pyinstaller生成程序的加载过程

  使用以下命令,您可以获取运行,道和加载程序的加载过程。

  pyinstaller -fwd aui.py #replace aui.py到您需要检测到的文件。

  结论:以上是首席CTO注释的所有内容,介绍了Django包装和部署的方式。我希望这对每个人都会有所帮助。如果您想了解有关此信息的更多信息,请记住收集并关注此网站。