IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> Python知识库 -> Centos环境部署django项目(永久复用) -> 正文阅读

[Python知识库]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.基础依赖环境安装

yum -y groupinstall "Development tools"

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.下载自己需要版本的python版本包
wget https://www.python.org/ftp/python/3.9.5/Python-3.9.5.tar.xz

## 2.新建python3目录
mkdir /usr/local/python3

## 3.安装Python3压缩包,进入解压目录,指定安装目录,安装Python3
tar -xvf  Python-3.9.5.tar.xz
cd Python-3.9.5
./configure --prefix=/usr/local/python3
make && make install

## 4.安装Python3时,会自动安装pip,如果没有就手动安装
yum -y install python-pip

## 5.pip配置(更换pip的源)
(1)找到pip.conf并编辑
[root@devops ~]# cd ~ 
[root@devops ~]# mkdir .pip 
[root@devops ~]# vim pip.conf
 

 
[global] 
index-url = https://mirrors.aliyun.com/pypi/simple/ 
[install] 
trusted-host=mirrors.aliyun.com
 
:wq!保存退出即可
 
(2) 安装依赖安装好pip
[root@devops ~]# yum -y install epel-release
[root@devops ~]# yum install python-pip
[root@devops ~]# pip install --upgrade pip

## 6.升级下pip
pip install --upgrade pip


## 7.创建软链接
ln -s /usr/local/python3/bin/python3 /usr/bin/python3
ln -s /usr/local/python3/bin/pip3 /usr/bin/pip3


## 输入python3测试是否安装成功
python -V

?

?4.安装nginx

## 1.yum方式安装nginx
yum -y install nginx

## 2.查看nginx版本
nginx -v

## 3.启动nginx
systemctl status nginx  ## 查看nginx状态

systemctl start nginx   ## 开启nginx服务

systemctl stp nginx     ## 关闭nginx服务





5.安装uwsgi

## 1.安装uwsgi
pip3 install uwsgi

## 2.建立软链接
ln -s /usr/local/python3/bin/uwsgi /usr/bin/uwsgi

## 3.查看uwsgi版本
uwsgi --version

三:部署django项目:

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

## 1.上传文件到服务器

## 2.解压项目
unzaip devops.zip

## 3.pip安装项目依赖模块
pip3 install -r requirements.txt

## 4.通过python3 manage.py runserver运行一下项目,如果能正常启动则进行下一步,不能正常运行往上检查。
这里需要注意使用python3来执行manage.py,否则会出现报错情况!

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

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


?

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

[uwsgi]
master=true
chdir=/data(服务器实际目录)/项目名称
module=项目名称.wsgi
py-autoreload=1
lazy-apps=true  
socket=127.0.0.1:8000
processes=4
buffer-size=32768
daemonize=uwsgi.log
log-maxsize = 5000000
vacuum = true
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)启动测试,并查看日志

## 在当前目录启动
uwsgi -i 项目名称.ini

## 启动之后查看进程
ps -ef | grep uwsgi

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

查看进程

?查看日志,服务启动正常

?3.配置nginx

vim /etc/nginx/nginx.conf

nginx.conf配置

user nginx;
worker_processes auto;
error_log /var/log/nginx/error.log;
pid /run/nginx.pid;

# Load dynamic modules. See /usr/share/doc/nginx/README.dynamic.
include /usr/share/nginx/modules/*.conf;

events {
    worker_connections  1024;
}
http {
    include       mime.types;
    default_type  application/octet-stream;
    sendfile        on;
    server {
        listen 80;
        charset utf-8;
        location /static {
               alias /项目所在目录/static/;
        }
        location / {
            include uwsgi_params;
            uwsgi_pass 127.0.0.1:8000;
        }
    }
}

(4)启动nginx

## 1.配置完nginx.conf,执行 nginx -t /etc/nginx.conf 启用nginx配置文件

## 2.软加载nginx   nginx -s  reload  

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

四:备注

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

## 项目重启
killall -9  uwsgi

uwsgi -i 项目名称.ini

nginx -s reload

## 关闭项目debug模式

vim  settings.py  

debug = Fasle

  Python知识库 最新文章
Python中String模块
【Python】 14-CVS文件操作
python的panda库读写文件
使用Nordic的nrf52840实现蓝牙DFU过程
【Python学习记录】numpy数组用法整理
Python学习笔记
python字符串和列表
python如何从txt文件中解析出有效的数据
Python编程从入门到实践自学/3.1-3.2
python变量
上一篇文章      下一篇文章      查看所有文章
加:2022-06-16 21:39:44  更:2022-06-16 21:39:59 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/15 12:59:34-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码