发布网友 发布时间:2024-09-28 01:38
共1个回答
热心网友 时间:2024-09-30 13:31
导读:很多朋友问到关于公司内网怎么部署django项目的相关问题,本文首席CTO笔记就来为大家做个详细解答,供大家参考,希望对大家有所帮助!一起来看看吧!
如何在服务器上部署Django项目并使其在后台一直运行前几天老师让我把一个Django项目(爬虫网页)放到校园内网上,但是我想先用自己的服务器来尝试一下。之前刚好有在DigitalOcean上买过服务器用来运行ss脚本,平时服务器一直放着没啥用,所以就拿它来试验一下。
废话不多说,第一步通过WinSCP软件把Django文件传到服务器上。
在服务器中安装Django需要的环境和我所需要的Python第三方库。
以上所有步骤完成后,还需要进行一步操作,这是我经历的一个坑。打开Django文件目录中的settings.py,把ALLOWED_HOSTS=[]改为ALLOWED_HOSTS=["*"]。
在服务器中打开到manage.py所在的目录,输入命令:
python3manage.pyrunserver0.0.0.0:8000
然后按下回车,在浏览器中输入:该服务器IP地址:8000,大功告成!
Attention:
1.python3不是特定的,是根据你的Django项目所需要的环境指定的。
2.8000是端口号,可以修改。
如果想要Django项目一直运行,关闭终端后还在运行,即需要运行如下命令,nohupcommand,command即位上文所说的python3manage.pyrunserver0.0.0.0:8000。
Windows10使用IIS部署Django项目
相对于linux系统来说,Windows10下进行django项目部署要简单许多,假设已搭建python环境,以及django项目已进行静态资源的收集(执行了pythonmanage.pycollectstatic),那么就可以开始以下操作了。
以管理员打开cmd命令安装:
再次输入命令:
会生成一个路径,将它保存下来
从刚刚获得的路径中复制一份wfastcgi.py文件到项目根目录中
在根目录中新建一个web.config文件,内容如下:
打开管理工具,进入IIS管理器,添加网站:
添加完毕后即可访问网站!
在IIS管理器中,进入应用程序池
访问页面或单独访问网站,后台出现400错误,这可能是因为没有给网站权限的原因
参考:
Django部署——uwsgi+Nginx(超详细)环境:
python3.6
centos7
Django1.11
用Django写了个小网站,只能在自己本地跑一跑!这怎么行?听说可以部署在云服务器上,这样别人就可以访问了!
从哪儿开始?就从Django开始吧!老规矩,按步骤:
这里不讲Django项目实施过程,假设你已经写了一个Django项目,并且在本地127.0.0.1:8000能够跑起来。喏,给你个参考,项目大概长这样:
也就是项目目录下的settings.py文件,主要强调几个地方:
①关闭DEBUG模式:
②修改ALLOWED_HOSTS:
③配置静态文件存放路径:
修改好配置之后执行:
这个没什么说的。。。在自己的云服务器上装好这两个工具
安装好uwsgi后最好验证一下,验证方法:
创建一个test.py文件:
启动uwsgi服务器:
如果可以正常启动而不报错那就应该没问题,不放心的话再在终端验证一下:
在uwsgi.ini里进行如下配置:
找到nginx的配置文件夹,centos7的nginx配置文件在/etc/nginx下,该路径下有一个nginx.conf总配置文件,还有两个文件夹./conf.d、./default.d,我们将nginx.conf复制一份到conf.d文件夹下,命名为nginx.conf(或者项目名.conf)进行如下修改(根据中文注释进行相应配置即可):
进入uwsgi.ini文件夹下执行:
在终端执行:
参考资料:
刘江的博客
博客园
知乎问答
无名Blog
自强学堂Django教程
Django文档
empty_xlBlog
如何在阿里云上部署django前提条件
1.为Python应用程序安装virtualenv和virtualenvwrapper,目的在于为Python项目创建独立的环境。
●安装pip
sudoapt-getinstallpython-pip
●安装virtualenv
sudopipinstallvirtualenv
●创建目录以存储您的virtualenv
mkdir~/.virtualenvs
●安装virtualenwrapper
sudopipinstallvirtualenvwrapper
●将WORKON_HOME设置为您的virtualenv目录
导出WORKON_HOME=~/.virtualenvs
●将WORKON_HOME设置为您的virtualenv目录
导出WORKON_HOME=~/.virtualenvs
●将?virtualenvwrapper.sh?添加到?.bashrc
将此行添加到~/.bashrc的末尾,以便加载virtualenvwrapper命令。/usr/local/bin/virtualenvwrapper.sh
退出,然后重新打开您的shell,或者使用?.bashrcorsource~/.bashrc?命令重新加载.bashrc,然后一切准备就绪。
2.安装git。
apt-getinstallgit
3.安装Nginx作为Web服务器,这样您便可在其之后运行您的应用程序。
Sudoapt-getinstallnginx
启动您的第一个Linux实例
接下来向您介绍使用阿里云管理控制台运行ECS实例的相关步骤。
1.登录到您的帐户,然后导航到“产品与服务”部分下的“云服务器”。单击侧边栏菜单中的概览。这会显示运行中的实例列表。单击购买实例从任意地域购买实例,或者继续到下一步创建新实例。
2.单击侧边栏菜单中的实例。在实例列表中选择所需地域,然后单击右上方栏中的创建实例。
3.系统会将您重新定向到“产品购买”控制台,在此您需要选择偏好的资源包-对ECS实例和数据传输提供特殊定价的初级资源包或提供两种定价模式的高级购买资源包。您可以根据自身需求选择订阅(按月或按年)或者按量付费。此案例中,我们选择了“按量付费”。
4.在此窗口中,选择要在其中启动ECS实例的数据中心地域和可用性区域。如果选择了地域但未选择可用性区域,系统会将实例随机放在任何区域。
5.现在您需要选择自己想要创建的实例类型。根据自身需求,从“生成”选项卡中选择生成实例类型。生成类型根据配置和所用的计算能力表示不同的实例类型。
6.接下来,选择网络类型以启动您的ECS实例。可根据自身需求选择经典网络或专有网络。在经典网络中,阿里云以分布式方式分配IP地址。它适合于需要简单快速地使用ECS的用户。专有网络更多的是一种逻辑隔离私有网络,它支持专用连接。它适合于熟悉网络管理的用户。选择适当的网络类型后,选择网络计费类型:数据传输或固定带宽。在这两种情况下,您都需要设置网络带宽峰值(最大数据传输速率)。
7.现在,您需要选择操作系统。每个选项下都提供了不同操作系统版本的列表。选择Ubuntu。
8.根据自身需要,从下拉菜单中选择系统磁盘类型。您还可以通过单击“添加磁盘”向此列表添加更多磁盘。
9.在“安全设置”部分中,您可以创建密码以提高安全性,或者在此阶段跳过此步骤并稍后从管理控制台执行此操作。
10.在“采购计划”部分中,键入您的实例名称并设置要启动的实例的数量。
11.在“概览”部分查看配置详情和总价,然后单击立即购买。
12.单击开通确认业务订单并启动实例。
13.启动实例后,您可以在控制台的实例选项卡中查看该实例。
安装和部署Django应用程序
您已使用阿里云管理控制台创建和启动ECS实例,接下来让我们了解如何安装和部署Django应用程序。
1.使用ssh命令登录到您的服务器
2.输入密码
3.通过创建一个新的virtualenv为部署Django应用程序设置环境:
mkvirtualenvDjangoApp
要退出新的virtualenv,请使用deactivate。
您可以使用workon在环境之间切换。要加载或在virtualenv之间切换,请使用workon命令:workonDjangoApp
4.在您的当前环境中安装Django
pipinstallDjango
5.使用django-admin命令创建样本项目并将目录更改为项目文件夹。
django-adminstartprojecttodoApp
cdtodoApp/
6.迁移或引导您的数据库。
pythonmanage.pymigrate
7.创建超级用户以访问管理面板。
pythonmanage.pycreatesuperuser
8.设置用户后,通过运行由manage.py操作的runserver命令测试您的应用程序
pythonmanage.pyrunserver0.0.0.0:8000
您将看到以下内容在端口8000上运行
转至/admin,这是您的管理面板,您可在此管理应用程序。
现在使用Nginx将您的应用程序置于Web服务器之后。
9.创建数据库架构开通python环境。
●将目录更改为Django项目目录
●运行以下命令
pythonmanage.pymigrate
10.收集所有静态文件(css、js等)
●运行以下命令以在任意特定位置收集所有静态文件
Pythonmanage.pycollectstatic--noinput
●开发人员负责将STATIC_URL路径设置为将收集所有静态文件的位置。
●这些变量在项目目录内的setting.py中定义。
1.STATIC_URL
2.STATICFILES_DIRS
3.STATIC_ROOT
11.使用uwsgi服务器安装uwsgi库并启动服务器。
pipinstalluWSGI
●创建用于部署Django应用程序的ini文件vimuwsgi.ini
●将其保存到应用程序目录上的uwsgi.ini。如需进一步了解如何编写ini文件,请参阅?Python/WSGI应用程序快速入门。运行此命令以启动您的应用程序。
uwsgiuwsgi.ini(您的ini文件)
12.更改nginx配置文件以用于应用程序。
server?{???listen80default_server;????listen[::]:80default_serveripv6only=on;????server_namelocalhost;?location/static/?{????includeuwsgi_params;????alias/root/todoApp/public/;?}?location?/??{????includeuwsgi_params;????uwsgi_passunix:/tmp/uwsgi.sock;??}}
13.重启nginx,随后您的应用程序将启动并在端口80上的nginx之后运行。
django项目生产环境部署安装uwsgi
1、pip3installuwsgi
2、在django项目下新建myuwsgi.ini文件(文件名可自取)
3、进入项目根目录执行:
没有报错则启动成功
4、配置nginx
在nginx同级目录下创建nginx.conf-my.conf文件
进入nginx.conf配置
重启nginx-sreload
结语:以上就是首席CTO笔记为大家整理的关于公司内网怎么部署django项目的相关内容解答汇总了,希望对您有所帮助!如果解决了您的问题欢迎分享给更多关注此问题的朋友喔~