这是一篇关于如何在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上运行的更多相关文章

  1. 【无私分享:ASP.NET CORE 项目实战(第十章)】发布项目到 Linux 上运行 Core 项目

    目录索引 [无私分享:ASP.NET CORE 项目实战]目录索引 简介 ASP.Net Core 给我们带来的最大的亮点就是跨平台,我在我电脑(win7)上用虚拟机建了个 CentOS7 ,来演示下 ...

  2. 发布项目到 Linux 上运行 Core 项目

    发布项目到 Linux 上运行 Core 项目 目录索引 [无私分享:ASP.NET CORE 项目实战]目录索引 简介 ASP.Net Core 给我们带来的最大的亮点就是跨平台,我在我电脑(win ...

  3. 在Linux上运行C#

    众所周知,C#是Microsoft推出的.NET语言,只能在.NET平台上运行,例如Win 9x.ME.NT.2000.XP和Win CE之类的操作系统.但是,现在却有了一个叫做Mono的项目,它的目 ...

  4. Docker在Linux上运行NetCore系列(一)配置运行DotNetCore控制台

    转发请注明此文章作者与路径,请尊重原著,违者必究. 系列文章:https://www.cnblogs.com/alunchen/p/10121379.html 本篇文章操作系统信息 Linux:ubu ...

  5. .netcore 在linux 上运行 Helllo World 例子

    要想在linux上运行netcore ,需要在linux 安装netcore SKD 下面分两步完成, 首先我的操作系统是 Ubuntu 14.04 ,不同版本可以参考 官网给出的连接 https:/ ...

  6. Django---Http协议简述和原理,HTTP请求码,HTTP请求格式和响应格式(重点),Django的安装与使用,Django项目的创建和运行(cmd和pycharm两种模式),Django的基础文件配置,Web框架的本质,服务器程序和应用程序(wsgiref服务端模块,jinja2模板渲染模块)的使用

    Django---Http协议简述和原理,HTTP请求码,HTTP请求格式和响应格式(重点),Django的安装与使用,Django项目的创建和运行(cmd和pycharm两种模式),Django的基 ...

  7. 不装mono,你的.NET程序照样可以在Linux上运行!

    让.NET应用程序在linux上运行,目前通用的做法就是在Linux上安装mono,然后通过”mono your.exe“命令运行这个程序. 这种运行.net程序的办法有两个弱点,一个是需要客户机安装 ...

  8. Wine——在Linux上运行Windows软件

    官网:https://www.winehq.org/ 参考: wikipedia 教你使用Wine在Linux上运行Windows软件 如何安装和使用Wine,以便在Linux上运行Windows应用 ...

  9. 部署网站: 配置项目到iis上运行报目录错误

    配置项目到iis上运行报目录错误 以下三种方法可使用: 1.添加文件访问权限 everyone  (线上环境慎用) 2.重新注册iis 3.web.config 加一段话 在<system.we ...

随机推荐

  1. log4j架构

    Log4j API设计为分层结构,其中每一层提供了不同的对象,对象执行不同的任务.这使得设计灵活,根据将来需要来扩展. 有两种类型可用在Log4j的框架对象. 核心对象: 框架的强制对象和框架的使用. ...

  2. 干货:Java正确获取客户端真实IP方法整理

    在JSP里,获取客户端的IP地址的方法是:request.getRemoteAddr(),这种方法在大部分情况下都是有效的.但是在通过了Apache,Squid等反向代理软件就不能获取到客户端的真实I ...

  3. Python骚操作(一)

    1. 交换变量值 2. 将列表中所有元素组合成字符串 3. 查找列表中频率最高的值 4. 检查连个字符串是不是由相同字母不同顺序组成 5. 反转字符串 6. 反转列表 7. 转置二维数组 8. 链式比 ...

  4. C++列表初始化是初始化本类自身含有的成员变量,不能直接初始化继承过来的成员变量

    在构造函数体内赋值就是对的了

  5. css3 动画属性

    transition Internet Explorer 9 以及更早版本的浏览器不支持 transition 属性. Internet Explorer 10.Firefox.Opera 和 Chr ...

  6. overleaf 提交arXiv 不成功

    从overleaf下载的PDF不能够直接提交给arXiv,但是可以在submit中选择导出下载压缩包,图片不能是png,最好是PDF 或者eps. 参考文献是bbl 文件,不是bib.

  7. yii2中使用定义在 params.php文件中的配置

    yii2 使用 配置文件中在 params 的配置, 可以用 Yii::$app->params['key1']形式访问 参考 yii can't access Yii::$app->pa ...

  8. canvas插入图片设置背景,渐变

    ##在canvas中插入图片(需要image对象) 1.canvas操作图片时,必须要等图片加载完才能操作 2.drawImage(image, x, y, width, height) 其中 ima ...

  9. 页面JS缓存问题解决方案

    .在jsp中加入头 <META HTTP-EQUIV="Pragma" CONTENT="no-cache"> <META HTTP-EQUI ...

  10. php算法题---连续子数组的最大和

    php算法题---连续子数组的最大和 一.总结 一句话总结: 重要:一定要本机调试过了再提交代码,因为很容易出现考虑不周的情况,或者修改了之后没有考虑修改的这部分 利用空间来换时间,或者利用空间来换算 ...