項目運行-nginx配置

首先對雲服務器建立連接以及做相應的安全配置
然後進去nginx
$ sudo apt update -y 
$ sudo apt upgrade -y 
# 安裝軟件包 
$ sudo apt install -y gcc make openssl mysql-server zip p7zip apache2-utils sendmail 
# 安裝必要依賴 $ sudo apt install -y libbz2-dev libpcre3 libpcre3-dev libreadlinedev libsqlite3-dev libssl-dev zlib1g-dev
#創建目錄
$ sudo mkdir -p /opt/swiper/logs
#修改權限
$ sudo chown -R ubuntu:adm awiper
#上傳代碼
$ rsync -crvP --exclude={.git,.venv,logs,__pycache__} ./ root@ip:/opt/swiper/

#創建虛擬環境
cd /opt/swiper
python -m venv .venv
cource .venv/bin/activate

#軟件源的修改
mkdir -p ~/.pip
cd ~/.pip
touch pip.conf
#然後在pip.conf中添加一下代碼
[global]
index-url = https://pypi.douban.com/simple

#安裝包
pip install -r requirements.txt

#連接數據庫創建database

#表結構遷移

#機器人創建出來
#執行
gunicorn -c swiper/gconfig.py swiper.wsgi
#查看
psgrep gunicorn

#配置nginx外網可訪問
vim nginx目錄
	worker_processes  2; #工作進程的數量與cpu核心數保持一致(可改)
	worker_cpu_affinity 01 10;  #工作進程與cpu核心綁定
	pid   /var/log/nginx/nginx.pid;  #目錄由自己創建來保存它的文件

event{
	use epoll;     #使用epoll來處理io事件
	worker_connections  65535;  #限定單個進程的最大連接數(可改)
}

#定義日誌格式
log_format main '...'
#定義請求日誌和錯誤日誌的文件路徑
access_log  /var/log/nginx/access.log main;
error_log  /var/log/nginx/error.log warn;

#性能相關配置
keepalive_timeout  65;  #keepalive 超時時間
gzip    on;   #啓用壓縮,報文壓縮

server{
	端口號
	域名或ip地址
	當前server的日誌設置
	網站logo圖標配置
	程序內部靜態文件配置
	所有以/api/開頭的路徑的配置
}
#查看
psgrep nginx
#平滑重啓(避免使用kill)
sudo nginx -s relod

user-->request-->nginx(proxy)-->gunicorn(httpserver)-->wsgi-->diango(webapplication)
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章