日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 运维知识 > centos >内容正文

centos

Django项目部署在Centos7

發(fā)布時(shí)間:2023/12/10 centos 50 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Django项目部署在Centos7 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

把Django項(xiàng)目部署在Centos7下

  • 先有一個(gè)Django項(xiàng)目

    一個(gè)員工管理系統(tǒng)(ems) 員工管理系統(tǒng)

  • 使用VMware創(chuàng)建一個(gè)虛擬的Linux系統(tǒng)

  • Centos7下安裝MySql5.7 詳細(xì)安裝

  • Centos7下安裝Python3.5 詳細(xì)安裝

  • Centos7下安裝Django2.0.6

- 安裝數(shù)據(jù)庫驅(qū)動:- yum install gcc mariadb-devel- pip install mysqlclient- pip install django=="2.0.6"- 測試使用:- django-admin startproject testproj 在當(dāng)前目錄下創(chuàng)建一個(gè)project:"testproj"- cd到testproj目錄下的testporj目錄下settings.py 修改配置:ALLOWED_HOSTS = ["*"]- 啟動django內(nèi)置的web服務(wù)器。cd到testproj目錄下,執(zhí)行:python manage.py runserver 0.0.0.0:port- 在Windows的瀏覽器中訪問:ip:port -- ip為Linux系統(tǒng)的ip地址
  • Centos7下安裝uWSGI
- 將uWSGI的tar包發(fā)送linux - 解壓tar:tar -zxvf uwsgi-2.0.17.tar.gz - cd到解壓目錄下,編譯:make - 為了可以更方便的執(zhí)行 uwsgi 啟動uWSGI服務(wù)器,定制鏈接:ln -s /usr/local/uwsgi-2.0.17/uwsgi /usr/bin/uwsgi則可以在任意目錄下執(zhí)行 uwsgi 去啟動uWSGI服務(wù)器 - 測試使用python的wsgi服務(wù)器-uWSGI- 在任意的一個(gè)目錄中定義一個(gè)python腳本:hello.pydef application(env, start_response):start_response('200 OK', [('Content-Type','text/html;charset=utf-8')])return [bytes('你好啊!!','utf-8'),b'Mr_lee'] # 基于wsgi協(xié)議規(guī)范實(shí)現(xiàn)的代碼- 啟動uWSGI服務(wù)器,并部署hello.py程序uwsgi --http 192.168.248.128:8001 --wsgi-file hello.py #注意hilo.py可以寫成絕對路徑- 瀏覽器訪問:192.168.248.128:8001
  • uWSGI部署Django項(xiàng)目

    1.mysql數(shù)據(jù)庫操作:

設(shè)置mysql的引擎默認(rèn)為:innodb在/etc/my.cnf的[mysqld]中添加配置:default-storage-engine=InnoDB建議mysql設(shè)置為嚴(yán)格模式在/etc/my.cof的[mysqld]中添加配置:sql_mode=STRICT_TRANS_TABLES查看mysql的配置參數(shù):mysql> show variables where variable_name like '%mode%';注:修改配置后,要重啟Mysql服務(wù)在數(shù)據(jù)庫中建好項(xiàng)目需要的database:“ems2_project”可使用Navicat創(chuàng)建,注意修改字符集為:utf8 2.在Django項(xiàng)目的settings.py中修改配置 DENUG = False # 去掉開發(fā)模式ALLOWED_HOSTS = ["*"] # 開放訪問hostDATABASES = {'default' : 'django.db.backends.mysql','NAME' : 'ems2_project','USER' : 'root','HOST' : 'localhost' # 建議寫同一個(gè)ip地址,在每個(gè)uWSGI中'PORT' : 3306,'PASSWORD' : '123456'} 3.發(fā)送項(xiàng)目到Linux并做移植 python manage.py makemigrationspython manage.py migrate 4.編寫uWSGI的配置文件創(chuàng)建文件:config.ini # 建議放在項(xiàng)目的跟目錄下 [uwsgi]http = 192.168.186.159:9000 # uWSGI服務(wù)器訪問地址# uWSGI和Nginx通信的portsocket = 192.168.186.159:9001chdir = /usr/local/Django_project/ems2_project # 項(xiàng)目所在目錄(建議存放在/usr/local/下,先創(chuàng)建Django_project目錄)wsgi-file = ems2_project/wsgi.py # 基于項(xiàng)目目錄的相對路徑processes = 4threads = 2stats = 192.168.186.159:9002vacuum = truepidfile = /usr/local/Django_project/ems2_project/uwsgi.pid # 建議進(jìn)程ID存放位置daemonize = /usr/local/Django_project/ems2_project/uwsgi.log # 建議日志文件存放位置 5.根據(jù)如上配置啟動uWSGI服務(wù)器uwsgi --ini config.ini # 注意:config.ini是相對路徑6.關(guān)閉服務(wù)器uwsgi -- stop uwsgi.pid # 通過進(jìn)程id文件 注:如多次開啟并未關(guān)閉,需要kill -9 進(jìn)程id
  • Centos7下安裝、配置Nginx
安裝:- 將tar包發(fā)送的linux- 解壓 tar -zxvf nginx-1.11.1.tar.gz - 安裝依賴 yum install gcc zlib-devel pcre-devel - cd到解壓目錄:./configure #配置檢測- cd到解壓目錄:make && make install #編譯并安裝- 安裝完成,安裝路徑為/usr/local/nginx ,日志路徑為 /usr/local/nginx/logs ,可執(zhí)行文件路徑為 /usr/local/nginx/sbin ,配置文件路徑為 /usr/local/nginx/conf歡迎頁面路徑為 /usr/local/nginx/html- ln -s /usr/local/nginx/sbin/nginx /usr/bin/nginx 制作連接,便于執(zhí)行nginx指令- nginx #啟動 nginx -s stop #關(guān)閉nginx -s reload #重啟http://ip:80即可訪問nginx歡迎頁面 配置:到配置路徑中的nginx.conf /usr/local/nginx/conf/nginx.conf upstream ems{server 192.168.157.141:9001; # uWSGI's socket = 192.168.x.x:9001#可以在添加其他的uWSGI的服務(wù)器 }server {listen 80;server_name 192.168.157.142; # nginx服務(wù)器的ipcharset utf-8;location / {uwsgi_pass ems; #和上面的upstream轉(zhuǎn)接 include /usr/local/nginx/conf/uwsgi_params; # the uwsgi_params file you installed} location /static { #http://ip:80/static/a/b/c/d.png ==> /usr/local/static/a/b/c/d.png alias /usr/local/static; # your Django project's static files - amend as required} }
  • 搭建uWSGI集群

搭建uWSGI集群,只需要多做幾份uWSGI的配置文件,文件中設(shè)置不同的ip:port,指向相同的project,然后啟動多個(gè)uWSGI即可。

*默認(rèn):輪詢upstream django {server 192.168.0.103:8989; server 192.168.0.104:8989;} *iphash:基于ip的負(fù)載均衡.upstream django {ip_hash;server 192.168.0.103:8989;server 192.168.0.104:8990;} *權(quán)重輪詢:upstream django {server 192.168.0.103:8989 weight=1; server 192.168.0.104:8990 weight=2; } *最小連接數(shù):upstream django {least_conn; server 192.168.0.103:8989;server 192.168.0.104:8990;}

至此,一個(gè)項(xiàng)目部署成功。

總結(jié)

以上是生活随笔為你收集整理的Django项目部署在Centos7的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。