这是一篇关于如何在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. postman中如何传数组

    方法一: postman的传参: java接收: package com.nps.base.xue.xd.groovyEngine import com.google.gson.Gson import ...

  2. 利用zk客户端删除solr shard

    进入zk客户端 ./bin/zkCli.sh -server ip:2181 显示所有的内容: ls / 删除数据: rmr /filename path

  3. Java 中的 SPI 机制是什么鬼?高级 Java 必须掌握!

    作者:sigangjun blog.csdn.net/sigangjun/article/details/79071850 SPI的全名为:Service Provider Interface,大多数 ...

  4. JSON Web Token (JWT)生成Token及解密实战。

    昨天讲解了JWT的介绍.应用场景.优点及注意事项等,今天来个JWT具体的使用实践吧. 从JWT官网支持的类库来看,jjwt是Java支持的算法中最全的,推荐使用,网址如下. https://githu ...

  5. spring MVC 转发与重定向(传参)

    return "forward:index.jsp"; //转发  return "forward:user.do?method=reg5"; //转发 ret ...

  6. 十个非常实用的MySQL命令

      建赟  版主 楼主   前言 今天介绍一些MySQL常用的实用命令,都是一些比较简单的命令.已经知道的朋友,就当是巩固吧,不知道的童鞋,可以好好在自己的机器上,练习下. 0. 显示数据库 命令:s ...

  7. 转: PHP中this,self,parent的区别

    {一}PHP中this,self,parent的区别之一this篇 面向对象编程(OOP,Object OrientedProgramming)现已经成为编程人员的一项基本技能.利用OOP的思想进行P ...

  8. jdk1.8新特性学习

    package com.xll.code.jdk1_8study; import com.xll.code.jdk1_8study.pojo.User; import org.junit.jupite ...

  9. 2000w数据,redis中只存20w的数据,如何保证redis中的数据都是热点数据

    redis 内存数据集大小上升到一定大小的时候,就会施行数据淘汰策略.redis 提供 6种数据淘汰策略: voltile-lru:从已设置过期时间的数据集(server.db[i].expires) ...

  10. npm ERR! Failed at the gff@1.0.0 start script.

    code ELIFECYCLE npm ERR! errno 1 npm ERR! gff@1.0.0 start: `node build/dev-server.js` npm ERR! Exit ...