Centos7部署Django

1.安装python3依赖包

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
yum install libffi-devel -y

因为Python3.7.0以上版本pip安装会报错ModuleNotFoundError: No module named '_ctypes'
最好在编译安装前安装。

2.通过wget下载文件工具下载python3安装包

cd usr/local/
wget --no-check-certificate https://www.python.org/ftp/python/3.7.2/Python-3.7.2.tgz
下载时可能会报错:::-bash: wget: command not found
yum -y install wget

3.下载完解压缩

tar -xzvf Python-3.7.2.tgz

进入解压后的Python-3.7.2文件夹,编译安装(安装到新建的application/python3)

./configure prefix=/usr/local/application/python3
make && make install

4.python创建软连接

[root@localhost bin]# ll python*
lrwxrwxrwx. 1 root root 7 11月 7 00:25 python -> python2
lrwxrwxrwx. 1 root root 9 11月 7 00:25 python2 -> python2.7
-rwxr-xr-x. 1 root root 7216 8月 7 08:52 python2.7

把python软连接到安装的python3

ln -s /usr/local/application/python3/bin/python3 /usr/bin/python

由于yum依赖于python2.7.5,把下面文件设置为Python2执行

vim /usr/bin/yum
vim /usr/libexec/urlgrabber-ext-down

 5.配置pip3

python3安装完成后默认安装了pip3,直接配置软连接即可.
ln -s /usr/local/application/python3/bin/pip3 /usr/bin/pip3
(执行pip3如果显示软连接地址和配置地址不一样而报错,可以在vim /usr/bin/pip3 查看执行路径)

6.安装虚拟环境

virtualenv可以搭建虚拟且独立的python运行环境,(yum全局,pip独立)

1.virtualenv本质上是个python包, 使用pip安装
  pip3 install virtualenv #安装虚拟环境 
2. 使用virtualenv创建虚拟环境:
  virtualenv envname
  #可以在virtualenv后添加 -P path 指定Python解释器程序路径
  #虚拟环境拥有bin、include、lib三个文件夹。本虚拟环境所有安装的    Python库将存放在envname/lib/pythonX.X/site-packages/下。
  创建虚拟环境就会装好python,把系统Python复制一份到virtualenv的环境,用命令source envname/bin/activate进入一个virtualenv环境时
  virtualenv会修改相关环境变量,让命令python和pip均指向当前的virtualenv环境。
  进入虚拟环境:source envname/bin/activate
  退出虚拟环境:deactivate        

7.确保开发环境的一致性
  通过命令保证环境的一致性,导出当前python环境的包
  pip3 freeze > requirements.txt
  这将会创建一个 requirements.txt 文件,其中包含了当前环境中所有包及 各自的版本的简单列表。
  可以使用 “pip list”在不产生requirements文件的情况下, 查看已安装包的列表
  在服务器项目内:pip3 install -r requirements.txt

8.报错问题

 1   1安装:django-auth-ldap==2.0.0报如下错误
 2   In file included from Modules/LDAPObject.c:8:0:
 3   Modules/constants.h:7:18: 致命错误:lber.h:没有那个文件或目录
 4   #include "lber.h"
 5   ^
 6   编译中断。
 7   error: command 'gcc' failed with exit status 1
 8   yum install openldap-devel
 9   2.安装mysqlclient==1.4.2.post1报如下错误
10   OSError: mysql_config not found
11   yum install mysql-devel gcc gcc-devel python-devel
12   3.pip install git+git://github.com/sshwsfc/xadmin.git@django2报错如下
13   原因:需要用https才能读到数据
14   解决方法:输入命令 git config --global url."https://".insteadOf git://
View Code

9.在后台运行 django
  

nohup python manage.py runserver 10.11.0.204:8000 &

查看后台某个进程:

ps -ef|grep "python"

杀死进程:

 kill -9 pid

 1.安装node.js 

wget https://nodejs.org/dist/v10.16.0/node-v10.16.0-linux-x64.tar.xz

2.解压包
依次执行

xz -d node-v9.3.0-linux-x64.tar.xz
tar -xf node-v9.3.0-linux-x64.tar

3.创建软连接

ln -s /usr/local/node-v9.3.0-linux-x64/bin/node /usr/bin/node
ln -s /usr/local/node-v9.3.0-linux-x64/bin/npm /usr/bin/npm
ln -s /usr/local/node-v9.3.0-linux-x64/bin/npm /usr/bin/npx

  命令:
  创建:ln -s [源文件或目录] [目标文件或目录]
  删除:rm –rf 软链接名称
  修改:ln –snf [新的源文件或目录] [目标文件或目录]
  查看软连接:ls -al
4.测试
  node -v
  npm
  npx
5.安装启动

npm install
nohup npm run start &

 nginx安装

下载:

wget http://nginx.org/download/nginx-1.10.2.tar.gz

解压:

解压:tar -zxvf nginx-1.10.2.tar.gz

进入到nginx目录:cd nginx-1.10.2

./configure 
--prefix=/usr/local/nginx 
--pid-path=/var/run/nginx/nginx.pid 
--lock-path=/var/lock/nginx.lock 
--error-log-path=/var/log/nginx/error.log 
--http-log-path=/var/log/nginx/access.log 
--with-http_gzip_static_module 
--http-client-body-temp-path=/var/temp/nginx/client 
--http-proxy-temp-path=/var/temp/nginx/proxy 
--http-fastcgi-temp-path=/var/temp/nginx/fastcgi 
--http-uwsgi-temp-path=/var/temp/nginx/uwsgi 
--http-scgi-temp-path=/var/temp/nginx/scgi

编译安装

make && make install

常用命令

cd /usr/local/nginx/sbin/
./nginx 
./nginx -s stop
./nginx -s quit
./nginx -s reload
./nginx -s quit:此方式停止步骤是待nginx进程处理任务完毕进行停止。
./nginx -s stop:此方式相当于先查出nginx进程id再使用kill命令强制杀掉进程。
原文地址:https://www.cnblogs.com/daidechong/p/11996020.html