Django项目在linux上运行
这是一篇关于如何在linux下,以后台进程的方式运行服务,命令改改基本上就通用了。
前言
我们在windows本地开发完Django项目后,需要把项目部署到linux环境下。
当然,直接在目录下敲击命令不就行了嘛(python manage.py runserver 0.0.0.0:8000),但是这是以前台的形式启动的;
如果你关闭了窗口,进程也随之结束,那我不关了呗,你行!!!!!!
如果想服务在后台运行,就得知道 nohup命令。
首先linux系统要先安装Django
pip3 install django==1.11.11
上传
将你的项目打包上传至linux服务器:
上传命令可以用 rz -y ,不知道的百度一下。
解压
[root@192.168.32.130 /python/django]$ unzip mysite.zip
Archive: mysite.zip
creating: mysite/
creating: mysite/.idea/
creating: mysite/.idea/inspectionProfiles/
inflating: mysite/.idea/misc.xml
inflating: mysite/.idea/modules.xml
inflating: mysite/.idea/mysite.iml
inflating: mysite/.idea/workspace.xml
creating: mysite/app01/
inflating: mysite/app01/admin.py
inflating: mysite/app01/apps.py
creating: mysite/app01/migrations/
extracting: mysite/app01/migrations/__init__.py
creating: mysite/app01/migrations/__pycache__/
inflating: mysite/app01/migrations/__pycache__/__init__.cpython-36.pyc
inflating: mysite/app01/models.py
inflating: mysite/app01/tests.py
inflating: mysite/app01/views.py
extracting: mysite/app01/__init__.py
creating: mysite/app01/__pycache__/
inflating: mysite/app01/__pycache__/admin.cpython-36.pyc
inflating: mysite/app01/__pycache__/apps.cpython-36.pyc
inflating: mysite/app01/__pycache__/models.cpython-36.pyc
inflating: mysite/app01/__pycache__/views.cpython-36.pyc
inflating: mysite/app01/__pycache__/__init__.cpython-36.pyc
inflating: mysite/db.sqlite3
inflating: mysite/manage.py
creating: mysite/mysite/
inflating: mysite/mysite/settings.py
inflating: mysite/mysite/urls.py
inflating: mysite/mysite/wsgi.py
extracting: mysite/mysite/__init__.py
creating: mysite/mysite/__pycache__/
inflating: mysite/mysite/__pycache__/settings.cpython-36.pyc
inflating: mysite/mysite/__pycache__/urls.cpython-36.pyc
inflating: mysite/mysite/__pycache__/wsgi.cpython-36.pyc
inflating: mysite/mysite/__pycache__/__init__.cpython-36.pyc
creating: mysite/templates/
inflating: mysite/templates/404.html
inflating: mysite/templates/home.html
inflating: mysite/templates/index.html
[root@192.168.32.130 /python/django/mysite]$ chmod +x manage.py
[root@192.168.32.130 /python/django/mysite]$ ll
total 28
drwxr-xr-x 4 root root 4096 Nov 21 2019 app01
-rw-r--r-- 1 root root 12288 Nov 21 2019 db.sqlite3
-rwxr-xr-x 1 root root 826 Nov 21 2019 manage.py
drwxr-xr-x 3 root root 4096 Nov 21 2019 mysite
drwxr-xr-x 2 root root 4096 Nov 21 2019 templates
制作启动脚本
制作启动脚本
[root@192.168.32.130 /python/django/mysite]$ vim start.sh
#/bin/bash
# File : start.sh
# Author: Jack秦
# Date : 2019/11/21
IP="0.0.0.0"
START_PORT=8000
RUN_PORT=`netstat -tunlp|grep ${START_PORT}|awk '{print $7}'|awk -F'/' '{print $1}'`
run_info="${IP}:${START_PORT}"
python_bin="/usr/local/bin/python3"
logfile="log_app.out"
if [ -n "${RUN_PORT}" ];then
kill -9 ${RUN_PORT}
fi
nohup ${python_bin} manage.py runserver ${run_info} >>${logfile} 2>&1 &
[root@192.168.32.130 /python/django/mysite]$ chmod +x start.sh
制作关闭脚本
[root@192.168.32.130 /python/django/mysite]$ vim stop.sh
#/bin/bash
# File : start.sh
# Author: Jack秦
# Date : 2019/11/21
START_PORT=8000
RUN_PORT=`netstat -tunlp|grep ${START_PORT}|awk '{print $7}'|awk -F'/' '{print $1}'`
kill -9 ${RUN_PORT}
[root@192.168.32.130 /python/django/mysite]$ chmod +x stop.sh
好了,至此,现在已经制作好了,执行./start.sh 就可以启动我们的django项目了
[root@192.168.32.130 /python/django/mysite]$ ./start.sh
[root@192.168.32.130 /python/django/mysite]$ netstat -tunlp|grep 8000
tcp 0 0 0.0.0.0:8000 0.0.0.0:* LISTEN 130640/python3
那么我们在web浏览器输入我们的地址就可以访问我们的项目了
http://192.168.32.130:8000/index/
Django项目在linux上运行的更多相关文章
- 【无私分享:ASP.NET CORE 项目实战(第十章)】发布项目到 Linux 上运行 Core 项目
目录索引 [无私分享:ASP.NET CORE 项目实战]目录索引 简介 ASP.Net Core 给我们带来的最大的亮点就是跨平台,我在我电脑(win7)上用虚拟机建了个 CentOS7 ,来演示下 ...
- 发布项目到 Linux 上运行 Core 项目
发布项目到 Linux 上运行 Core 项目 目录索引 [无私分享:ASP.NET CORE 项目实战]目录索引 简介 ASP.Net Core 给我们带来的最大的亮点就是跨平台,我在我电脑(win ...
- 在Linux上运行C#
众所周知,C#是Microsoft推出的.NET语言,只能在.NET平台上运行,例如Win 9x.ME.NT.2000.XP和Win CE之类的操作系统.但是,现在却有了一个叫做Mono的项目,它的目 ...
- Docker在Linux上运行NetCore系列(一)配置运行DotNetCore控制台
转发请注明此文章作者与路径,请尊重原著,违者必究. 系列文章:https://www.cnblogs.com/alunchen/p/10121379.html 本篇文章操作系统信息 Linux:ubu ...
- .netcore 在linux 上运行 Helllo World 例子
要想在linux上运行netcore ,需要在linux 安装netcore SKD 下面分两步完成, 首先我的操作系统是 Ubuntu 14.04 ,不同版本可以参考 官网给出的连接 https:/ ...
- Django---Http协议简述和原理,HTTP请求码,HTTP请求格式和响应格式(重点),Django的安装与使用,Django项目的创建和运行(cmd和pycharm两种模式),Django的基础文件配置,Web框架的本质,服务器程序和应用程序(wsgiref服务端模块,jinja2模板渲染模块)的使用
Django---Http协议简述和原理,HTTP请求码,HTTP请求格式和响应格式(重点),Django的安装与使用,Django项目的创建和运行(cmd和pycharm两种模式),Django的基 ...
- 不装mono,你的.NET程序照样可以在Linux上运行!
让.NET应用程序在linux上运行,目前通用的做法就是在Linux上安装mono,然后通过”mono your.exe“命令运行这个程序. 这种运行.net程序的办法有两个弱点,一个是需要客户机安装 ...
- Wine——在Linux上运行Windows软件
官网:https://www.winehq.org/ 参考: wikipedia 教你使用Wine在Linux上运行Windows软件 如何安装和使用Wine,以便在Linux上运行Windows应用 ...
- 部署网站: 配置项目到iis上运行报目录错误
配置项目到iis上运行报目录错误 以下三种方法可使用: 1.添加文件访问权限 everyone (线上环境慎用) 2.重新注册iis 3.web.config 加一段话 在<system.we ...
随机推荐
- Codeforces 1182A Filling Shapes
题目链接:http://codeforces.com/problemset/problem/1182/A 思路:n为奇数时不可能完全填充,ans = 0.发现若要完全填充,每俩列可产生俩种情况,所以为 ...
- Java中哪个JSON库的解析速度是最快的?
JSON已经成为当前服务器与WEB应用之间数据传输的公认标准,不过正如许多我们所习以为常的事情一样,你会觉得这是理所当然的便不再深入思考 了.我们很少会去想用到的这些JSON库到底有什么不同,但事实上 ...
- kafka 入门
李克华 云计算高级群: 292870151 195907286 交流:Hadoop.NoSQL.分布式.lucene.solr.nutch kafka入门:简介.使用场景.设计原理.主要配置及集群搭 ...
- python3 日志重复打印logger
在python2中正常的日志,单只直接使用python3,发现日志重复了,其实是handlers多添加的原因, python2代码 ---------------------------------- ...
- Sublime Text自定制代码片段(Code Snippets)
在编写代码的整个过程中,开发人员经常会一次又一次的改写或者重用相同的代码段,消除这种重复过程的方法之一是把我们经常用到的代码保存成代码片段(snippets),这使得我们可以方便的检索和使用它们. 为 ...
- 页面JS缓存问题解决方案
.在jsp中加入头 <META HTTP-EQUIV="Pragma" CONTENT="no-cache"> <META HTTP-EQUI ...
- H5 小代码(实时更新)
:before { content: ''; display: inline-block; vertical-align: middle; height: %; } ↑ 自适应垂直居中 .clear ...
- 互联网金融ABS为何遭遇急刹车?
互联网金融ABS为何遭遇急刹车? 今年以来,互联网金融ABS迎来爆发式增长,已逐渐成为平台融资的重要渠道.近期有媒体称,监管方面已叫停审批,原因何在? 本期看点: 互联网金融ABS与传统ABS有何 ...
- django中写form表单时csrf_token的作用
之前在学习django的时候,在template中写form时,出现错误.百度,google后要加{% csrf_token %}才可以,之前一直也没研究,只是知道要加个这个东西,具体是什么也不明白. ...
- Vuex听说很难?
Vuex 是什么? Vuex 是一个专为 Vue.js 应用程序开发的状态管理模式.它采用集中式存储管理应用的所有组件状态,并以相应的规则保证状态以一种可预测的方式发生变化. 什么鬼东西 看完这段 ...