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/

posted @ 2019-11-21 20:41  GeminiMp  阅读(1558)  评论(0编辑  收藏  举报