Centos環(huán)境部署django項(xiàng)目的全過程(永久復(fù)用)
一:基礎(chǔ)環(huán)境介紹:
Centos:7.8(cat /etc/redhat-release查看版本號(hào))
Python:3.9.5(python -V查看版本號(hào))
Django:2.2.6(django-admin --version查看版本號(hào))
Uwsgi:2.0.20(uwsgi --version查看版本號(hào))
Nginx:1.20.1 (nginx -v查看版本號(hào))
二:部署環(huán)境安裝配置:
1.基礎(chǔ)依賴環(huán)境安裝
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壓縮包,進(jìn)入解壓目錄,指定安裝目錄,安裝Python3 tar -xvf Python-3.9.5.tar.xz cd Python-3.9.5 ./configure --prefix=/usr/local/python3 make && make install ## 4.安裝Python3時(shí),會(huì)自動(dòng)安裝pip,如果沒有就手動(dòng)安裝 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.創(chuàng)建軟鏈接 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.啟動(dòng)nginx systemctl status nginx ## 查看nginx狀態(tài) systemctl start nginx ## 開啟nginx服務(wù) systemctl stp nginx ## 關(guān)閉nginx服務(wù)
5.安裝uwsgi
## 1.安裝uwsgi pip3 install uwsgi ## 2.建立軟鏈接 ln -s /usr/local/python3/bin/uwsgi /usr/bin/uwsgi ## 3.查看uwsgi版本 uwsgi --version
三:部署django項(xiàng)目:
1.上傳項(xiàng)目并安裝項(xiàng)目模塊并啟動(dòng)測試
## 1.上傳文件到服務(wù)器 ## 2.解壓項(xiàng)目 unzaip devops.zip ## 3.pip安裝項(xiàng)目依賴模塊 pip3 install -r requirements.txt ## 4.通過python3 manage.py runserver運(yùn)行一下項(xiàng)目,如果能正常啟動(dòng)則進(jìn)行下一步,不能正常運(yùn)行往上檢查。 這里需要注意使用python3來執(zhí)行manage.py,否則會(huì)出現(xiàn)報(bào)錯(cuò)情況!
2.在項(xiàng)目里配置uwsgi.ini配置文件
(1)在settings.py所在目錄vim新文件 項(xiàng)目名稱.ini

(2)配置 項(xiàng)目名稱.ini文件
[uwsgi] master=true chdir=/data(服務(wù)器實(shí)際目錄)/項(xiàng)目名稱 module=項(xiàng)目名稱.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配置并收集項(xiàng)目靜態(tài)文件
一般都是這個(gè)配置:
settings.py配置:
STATIC_URL = '/static/' STATIC_ROOT = os.path.join(BASE_DIR, '/static/') STATICFILES_DIRS = [ os.path.join(BASE_DIR, '../bitmain_cmdb/static'), ## 實(shí)際靜態(tài)文件所在項(xiàng)目路徑,親測好使 ]
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)執(zhí)行收集靜態(tài)文件命令:
python manage.py collectstatic
(4)啟動(dòng)測試,并查看日志
## 在當(dāng)前目錄啟動(dòng) uwsgi -i 項(xiàng)目名稱.ini ## 啟動(dòng)之后查看進(jìn)程 ps -ef | grep uwsgi
啟動(dòng):uwsgi -i 項(xiàng)目名稱.ini

查看進(jìn)程

查看日志,服務(wù)啟動(dòng)正常

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 /項(xiàng)目所在目錄/static/;
}
location / {
include uwsgi_params;
uwsgi_pass 127.0.0.1:8000;
}
}
}(4)啟動(dòng)nginx
## 1.配置完nginx.conf,執(zhí)行 nginx -t /etc/nginx.conf 啟用nginx配置文件 ## 2.軟加載nginx nginx -s reload
(5)訪問django項(xiàng)目http://服務(wù)器ip/login/

四:備注
之后項(xiàng)目重啟只需要重啟uwsgi之后再重啟nginx即可,切記正式環(huán)境要關(guān)掉django的debug模式,防止報(bào)錯(cuò)源碼被看到。
## 項(xiàng)目重啟 killall -9 uwsgi uwsgi -i 項(xiàng)目名稱.ini nginx -s reload ## 關(guān)閉項(xiàng)目debug模式 vim settings.py debug = Fasle
總結(jié)
到此這篇關(guān)于Centos環(huán)境部署django項(xiàng)目的文章就介紹到這了,更多相關(guān)Centos環(huán)境部署django內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- centos+nginx+uwsgi部署django項(xiàng)目上線
- 將django項(xiàng)目部署到centos的踩坑實(shí)戰(zhàn)
- centos8使用Docker部署Django項(xiàng)目的詳細(xì)教程
- Centos8下django項(xiàng)目部署 nginx+uwsgi的教程
- CentOS下寶塔部署Django項(xiàng)目的詳細(xì)教程
- 詳解centos7+django+python3+mysql+阿里云部署項(xiàng)目全流程
- Centos部署django服務(wù)nginx+uwsgi的方法
- 將Django項(xiàng)目部署到CentOs服務(wù)器中
- 詳解將Django部署到Centos7全攻略
- django如何部署到centos服務(wù)器上
相關(guān)文章
python re.sub()替換正則的匹配內(nèi)容方法
今天小編就為大家分享一篇python re.sub()替換正則的匹配內(nèi)容方法,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-07-07
linux系統(tǒng)使用python監(jiān)控apache服務(wù)器進(jìn)程腳本分享
這篇文章主要介紹了linux系統(tǒng)使用python監(jiān)控apache服務(wù)器進(jìn)程的腳本,大家參考使用吧2014-01-01
Python?遞歸式實(shí)現(xiàn)二叉樹前序,中序,后序遍歷
這篇文章主要介紹了Python?遞歸式實(shí)現(xiàn)二叉樹前序,中序,后序遍歷,更多相關(guān)資料,需要的小伙伴可以參考下面具體的文章內(nèi)容2022-03-03
2020最新pycharm漢化安裝(python工程獅親測有效)
這篇文章主要介紹了2020最新pycharm漢化安裝(python工程獅親測有效),文中通過圖文介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-04-04
利用python實(shí)現(xiàn).dcm格式圖像轉(zhuǎn)為.jpg格式
今天小編就為大家分享一篇利用python實(shí)現(xiàn).dcm格式圖像轉(zhuǎn)為.jpg格式,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-01-01

