Linux学习20-nohup挂后台启动django

前言

django在linux上运行,通常在xshell远程链接后,是经过python manage.py runserver 0.0.0.0:8000启动服务。可是这样有个弊端,窗口关闭服务就中止了。 nohup能够启动的时候挂后台运行python

nohup后台运行

cd到django的manage.py目录,启动以前先杀掉进程linux

[root@yoyo ~]# cd /usr/local/django2/
[root@yoyo django2]# ps -aux | grep python|xargs kill -9
kill: cannot find process "root"
kill: sending signal to 21029 failed: No such process
kill: cannot find process "0.0"
kill: cannot find process "0.0"
kill: sending signal to 112660 failed: No such process
kill: sending signal to 968 failed: No such process
kill: cannot find process "pts/2"
kill: cannot find process "S+"
kill: cannot find process "14:32"
kill: cannot find process "0:00"
kill: cannot find process "grep"
kill: cannot find process "--color=auto"
kill: cannot find process "python"
[root@yoyo django2]#

接着使用nohup启动进程,能够指定日志输出到djo.out,若是不指定默认是在nohup.out。指定日志路径后面加上2>&1 &shell

[root@yoyo django2]# nohup python manage.py runserver 0.0.0.0:8000 >djo.out 2>&1 &
[1] 21616
[root@yoyo django2]# tail -f djo.out 
nohup: ignoring input
[25/Mar/2019 14:36:31] "GET / HTTP/1.1" 200 24
[25/Mar/2019 14:36:37] "GET / HTTP/1.1" 200 24
[25/Mar/2019 14:36:38] "GET / HTTP/1.1" 200 24
[25/Mar/2019 14:36:39] "GET / HTTP/1.1" 200 24

查看实时日志能够用tail -f djo.outdjango

start.sh和stop.sh

接着能够在manage.py目录下一个start.sh文件启动django,再写个stop.sh停掉django服务。 使用vim start.sh编辑如下2行,编辑完成后Esc退出,输入:wq保存退出vim

[root@yoyo django2]# vim start.sh

ps -aux | grep python|xargs kill -9
nohup python manage.py runserver 0.0.0.0:8000 >djo.out 2>&1 &

继续使用vim start.sh编辑,编辑完成后Esc退出,输入:wq保存退出浏览器

ps -aux | grep python|xargs kill -9

编辑完成以后,受权这2个文件spa

[root@yoyo django2]# chmod +777 start.sh

[root@yoyo django2]# chmod +777 stop.sh

启动django

启动服务执行./start.sh,关闭服务执行./stop.sh日志

启动完成后,在浏览器输入地址,而后执行tail -f djo.out能够看到实时日志code

相关文章
相关标签/搜索