当前位置:   article > 正文

Centos环境部署django项目(永久复用)_centos django

centos django

一:基础环境介绍:

Centos:7.8(cat /etc/redhat-release查看版本号)

Python:3.9.5(python -V查看版本号)

Django:2.2.6(django-admin --version查看版本号)

Uwsgi:2.0.20(uwsgi --version查看版本号)

Nginx:1.20.1 (nginx -v查看版本号)

二:部署环境安装配置:

1.基础依赖环境安装

  1. yum -y groupinstall "Development tools"
  2. yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gcc make gdbm-devel db4-devel libpcap-devel xz-devel libffi-devel

2.安装wegt,vim,unzip等必须命令

yum -y install wget vim unzip

3.安装python与pip(或者python多版本管理工具pyenv等)

  1. ## 1.下载自己需要版本的python版本包
  2. wget https://www.python.org/ftp/python/3.9.5/Python-3.9.5.tar.xz
  3. ## 2.新建python3目录
  4. mkdir /usr/local/python3
  5. ## 3.安装Python3压缩包,进入解压目录,指定安装目录,安装Python3
  6. tar -xvf Python-3.9.5.tar.xz
  7. cd Python-3.9.5
  8. ./configure --prefix=/usr/local/python3
  9. make && make install
  10. ## 4.安装Python3时,会自动安装pip,如果没有就手动安装
  11. yum -y install python-pip
  12. ## 5.pip配置(更换pip的源)
  13. (1)找到pip.conf并编辑
  14. [root@devops ~]# cd ~
  15. [root@devops ~]# mkdir .pip
  16. [root@devops ~]# vim pip.conf
  17. [global]
  18. index-url = https://mirrors.aliyun.com/pypi/simple/
  19. [install]
  20. trusted-host=mirrors.aliyun.com
  21. :wq!保存退出即可
  22. (2) 安装依赖安装好pip
  23. [root@devops ~]# yum -y install epel-release
  24. [root@devops ~]# yum install python-pip
  25. [root@devops ~]# pip install --upgrade pip
  26. ## 6.升级下pip
  27. pip install --upgrade pip
  28. ## 7.创建软链接
  29. ln -s /usr/local/python3/bin/python3 /usr/bin/python3
  30. ln -s /usr/local/python3/bin/pip3 /usr/bin/pip3
  31. ## 输入python3测试是否安装成功
  32. python -V

 

 4.安装nginx

  1. ## 1.yum方式安装nginx
  2. yum -y install nginx
  3. ## 2.查看nginx版本
  4. nginx -v
  5. ## 3.启动nginx
  6. systemctl status nginx ## 查看nginx状态
  7. systemctl start nginx ## 开启nginx服务
  8. systemctl stp nginx ## 关闭nginx服务

5.安装uwsgi

  1. ## 1.安装uwsgi
  2. pip3 install uwsgi
  3. ## 2.建立软链接
  4. ln -s /usr/local/python3/bin/uwsgi /usr/bin/uwsgi
  5. ## 3.查看uwsgi版本
  6. uwsgi --version

三:部署django项目:

1.上传项目并安装项目模块并启动测试

  1. ## 1.上传文件到服务器
  2. ## 2.解压项目
  3. unzaip devops.zip
  4. ## 3.pip安装项目依赖模块
  5. pip3 install -r requirements.txt
  6. ## 4.通过python3 manage.py runserver运行一下项目,如果能正常启动则进行下一步,不能正常运行往上检查。
  7. 这里需要注意使用python3来执行manage.py,否则会出现报错情况!

2.在项目里配置uwsgi.ini配置文件

(1)在settings.py所在目录vim新文件 项目名称.ini


 

(2)配置 项目名称.ini文件

  1. [uwsgi]
  2. master=true
  3. chdir=/data(服务器实际目录)/项目名称
  4. module=项目名称.wsgi
  5. py-autoreload=1
  6. lazy-apps=true
  7. socket=127.0.0.1:8000
  8. processes=4
  9. buffer-size=32768
  10. daemonize=uwsgi.log
  11. log-maxsize = 5000000
  12. vacuum = true
  13. disable-logging = true

 (3)检查settings.py配置并收集项目静态文件

一般都是这个配置:

settings.py配置:

STATIC_URL = '/static/'
STATIC_ROOT = os.path.join(BASE_DIR, '/static/')
STATICFILES_DIRS = [
  os.path.join(BASE_DIR, '../bitmain_cmdb/static'),  ## 实际静态文件所在项目路径,亲测好使
]

url.py配置:

from django.conf.urls import *
from django.contrib import admin
from django.conf.urls import url,include
from django.conf.urls.static import static
from django.conf import settings
urlpatterns = [
    url(r'^cmdb_admin/', admin.site.urls),
] + static(settings.STATIC_URL,document_root = settings.STATIC_ROOT)

执行收集静态文件命令:

python manage.py collectstatic

(4)启动测试,并查看日志

  1. ## 在当前目录启动
  2. uwsgi -i 项目名称.ini
  3. ## 启动之后查看进程
  4. ps -ef | grep uwsgi

启动:uwsgi -i 项目名称.ini

查看进程

 查看日志,服务启动正常

 3.配置nginx

vim /etc/nginx/nginx.conf

nginx.conf配置

  1. user nginx;
  2. worker_processes auto;
  3. error_log /var/log/nginx/error.log;
  4. pid /run/nginx.pid;
  5. # Load dynamic modules. See /usr/share/doc/nginx/README.dynamic.
  6. include /usr/share/nginx/modules/*.conf;
  7. events {
  8. worker_connections 1024;
  9. }
  10. http {
  11. include mime.types;
  12. default_type application/octet-stream;
  13. sendfile on;
  14. server {
  15. listen 80;
  16. charset utf-8;
  17. location /static {
  18. alias /项目所在目录/static/;
  19. }
  20. location / {
  21. include uwsgi_params;
  22. uwsgi_pass 127.0.0.1:8000;
  23. }
  24. }
  25. }

(4)启动nginx

  1. ## 1.配置完nginx.conf,执行 nginx -t /etc/nginx.conf 启用nginx配置文件
  2. ## 2.软加载nginx nginx -s reload

(5)访问django项目http://服务器ip/login/

四:备注

之后项目重启只需要重启uwsgi之后再重启nginx即可,切记正式环境要关掉django的debug模式,防止报错源码被看到。

  1. ## 项目重启
  2. killall -9 uwsgi
  3. uwsgi -i 项目名称.ini
  4. nginx -s reload
  5. ## 关闭项目debug模式
  6. vim settings.py
  7. debug = Fasle

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/花生_TL007/article/detail/508332
推荐阅读
相关标签
  

闽ICP备14008679号