1.安装python

#1.安装python3.7所需要的依赖包
yum -y groupinstall "Development tools"
yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel libffi-devel
#3下载python3.7的源码
3 wget https://www.python.org/ftp/python/3.7.0/Python-3.7.0.tar.xz
#4解压编译安装python3.7
4 tar -xJvf Python-3.7.0.tar.xz
#5.cd 到Python-3.7.0文件夹
5 cd Python-3.7.0
# 6、用./方法执行configure,并指定安装到usr目录下
6 ./configure --prefix=/usr/local/python3 --enable-shared
#7.开始编译安装
7 make && make install
# 8、配置环境变量, 创建软链接
8 ln -s /usr/local/python3/bin/python3 /usr/bin/python3
9 ln -s /usr/local/python3/bin/pip3 /usr/bin/pip3

#10将编译目录下的libpython3.7m.so.1.0文件复制到
10 cp /root/Python-3.7.0/libpython3.7m.so.1.0 /usr/lib64/libpython3.7m.so.1.0

2.虚拟环境的安装和创建在虚拟环境下安装项目所需要的python库

#安装虚拟环境
11 pip3 install virtualenv
#创建软连接
12 ln -s /usr/local/python3/bin/virtualenv /usr/bin/virtualenv
#创建项目和虚拟环境所需要的文件夹
13 mkdir -p /data/env
14 mkdir -p /data/wwwroot
#进入文件夹
15 cd /data/env
#创建虚拟环境
16 virtualenv --python=/usr/bin/python3 py3_dj2
#进入虚拟环境所在的目录
17 cd /data/env/py3_dj2/bin/
#启动虚拟环境
18 source activate
#安装项目所需要的python报
19 pip3 install django
20 pip3 install uwsgi
#创建软连接
21 ln -s /usr/local/python3/bin/uwsgi /usr/bin/uwsgi
#退出虚拟环境
22 deactivate

#cd 到根目录
23 cd ~

3.安装nginx

#下载nginx的源码
24 wget http://nginx.org/download/nginx-1.13.7.tar.gz
#解压
25 tar -zxvf nginx-1.13.7.tar.gz
#进入nginx-1.13.7文件中
26 cd nginx-1.13.7
27 ./configure
28 make && make install
#nginx一般默认安装好的路径为/usr/local/nginx 在/usr/local/nginx/conf/中先备份一下nginx.conf文件,以防意外。
29 cd /usr/local/nginx/conf/
30 cp nginx.conf nginx.conf.bak
#进入到下面目录中修改nginx.conf中的配置,
31 cd /usr/local/nginx/conf/
把原有的内容全部删掉改成下面的:
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
server {
listen 80;
server_name www.donghaiming.cn; #改为自己的域名,没域名修改为127.0.0.1:80
charset utf-8;
location / {
include uwsgi_params;
uwsgi_pass 127.0.0.1:8000; #端口要和uwsgi里配置的一样
uwsgi_param UWSGI_SCRIPT library.wsgi; #wsgi.py所在的目录名+.wsgi
uwsgi_param UWSGI_CHDIR /data/wwwroot/library/; #项目路径

}
location /static/ {
alias /data/wwwroot/library/static/; #静态资源路径
}
}
}

#把自己的项目放到 cd /data/wwwroot/目录下
在目录中添加 和项目名字相同的 项目.xml文件,内容如下:
<?xml version="1.0" encoding="UTF-8"?>
<uwsgi>
<socket>127.0.0.1:8000</socket> <!-- 内部端口,自定义 -->
<chdir>/data/wwwroot/library/</chdir> <!-- 项目路径 -->
<module>library.wsgi</module> <!-- wsgi.py所在目录名-->
<processes>4</processes> <!-- 进程数 -->
<daemonize>uwsgi.log</daemonize> <!-- 日志文件 -->
</uwsgi>

4.启动项目

#进入虚拟环境所在的目录
34 cd /data/env/py3_dj2/bin/
#进入虚拟环境
35 source activate
#进入项目所在的目录
36 cd /data/wwwroot/library/
#uwsgi 解析项目中的配置文件
37 uwsgi -x library.xml
#进入nginx所在的目录
38 cd /usr/local/nginx/sbin/
#启动nginx,如果没有启动过 ./nginx就可以
39 ./nginx -s reload
#测试
40 curl 127.0.0.1:80
#迁移静态文件
41 cd /data/wwwroot/library/
42 python3 manage.py collectstatic
#查看操作步骤
43 history

linux单项目发布流程的更多相关文章

  1. Linux项目发布流程

    Linux项目发布流程(一) 1.安装pyhton3.7 的依赖包 yum -y groupinstall "Development tools" yum -y install z ...

  2. 前端Node项目发布流程

    最近在做前端的发布流程,发布流程的主要实现以下几个方面: 构建:包括JavaScript.css.html等的压缩,以及版本控制,利用md5生成版本号替换文件引用,实现长缓存策略. 发布:输出新版本的 ...

  3. linux 下安装 python ngix 项目发布流程

    1.安装python #1.安装python3.7所需要的依赖包yum -y groupinstall "Development tools"yum -y install zlib ...

  4. k8s:py项目发布完整流程

    k8s:py项目发布流程 1. 编写Dockerfile # cat Dockerfile FROM python:3.6-slim USER root RUN apt-get update & ...

  5. java项目发布到linux服务器,tomcat正常启动但没加载项目

    问题描述: java项目发布到linux服务器,一切操作正确,linux命令启动tomcat后,查看日志启动tomcat正常,上传的war包已经解压成功,但是tomcat没加载项目. 解决方法: 1. ...

  6. 关于Linux开源项目基础组件make编译流程

     关于Linux开源项目基础组件make编译流程 非常多Linux开源项目都会用到编译出可运行文件的make.这个是有一套流程的. 首先,GNU构建系统:https://en.wikipedia. ...

  7. 关于.net Core项目发布在Linux上的填坑

    本文主要记录.net Core项目发布在Linux服务器上面所遇到的问题,防止遗忘是 1.在发布文件中执行 dotnet xxxxxx.dll的时候提示如下错误: An assembly specif ...

  8. .Net Core 项目发布到Linux - CentOS 7(一)

    由于项目的需求,需要发布到Linux服务器上,在这里记录一下我发布的过程. 安装Linux 安装liunx系统很简单,网上也有很多教程,我是直接使用阿里云的CentOS 7.7 64位 部署环境 Li ...

  9. 自学linux——16.LAMP项目上线流程

    LAMP项目上线流程 一.编译安装与卸载Nginx(web服务器软件,类似于Apache) 1.安装nginx ①    下载nginx 网页下载https://nginx.org/en/downlo ...

随机推荐

  1. __x__(48)0910第六天__CSS Hack

    CSS Hack: 不到万不得已,不要使用.不易于维护. 有一些情况,需要一段特殊代码在遇到特殊浏览器环境才执行,而在其他条件下,不执行. 此时,CSS Hack 就能实现. CSS Hack 实际上 ...

  2. python 生成器generator

    关于生成器,主要有以下几个 关键点的内容 一.什么是generator ,为什么要有generator? 二.两种创建生成器方式 三.yield关键字 四.generator 两个调用方法 next( ...

  3. [Codeforces Round #508 (Div. 2)][Codeforces 1038E. Maximum Matching]

    前几天给舍友讲这题的时候感觉挺有意思的,就贴上来吧... 题目链接:1038E - Maximum Matching 题目大意:有\(n\)个棒子,每个条两端有颜色\(c1,c2\)以及他的价值\(v ...

  4. maven和glassfish安装和部署及hello1和hello2的部署

    1.安装maven和glassfish及配置环境变 首先搜索并下载maven3.6.0和glassfish4.1.1(版本看按需要选择). 点击安装包进行安装 安装完成后开始配置环境变量 打开系统环境 ...

  5. Appium-Python-Windows环境搭建笔记

    Appium版本:1.11.0 操作系统:Windows7-64位 开发语言:Python 3.7.2 测试应用平台:安卓 5.1.1 Appium服务端 一.JDK 也许你会觉得很奇怪,我搭建Pyt ...

  6. Mongodb 副本集+分片

    mongodb的分片功能是建立在副本集之上的,所以首先我们尝试着配置副本集. docker启动3个已经安装好mongo的镜像 # docker run -idt --name mongodb_01 m ...

  7. window10, java环境配置完后在cmd,输入java成功了,但为什么输入javac就失败了

    一.Path的配置:按一般的网上教程,配置时都会是复制这段[%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;] win10的都分开显示,还是比较直观,但由于编辑器的原因,所有变 ...

  8. oracle_dataGuard_11G

    [李红]--切记_从库只安装实例_不需要 dbca 创建数据库 但是 netca 创建监听看个人喜欢,我反正是创建了.[DataGuard_主数据库的参数配置]1.启用 force logging 功 ...

  9. spring注解简单记录

    @Autowired 自动匹配,按类型 @qualifiter("beanname") 当有多个bean匹配时,可指定bean名称 @Resource byname优先匹配,然后b ...

  10. qss qt按钮自定义