一、安裝Mysql
1、新建文件、配置倉(cāng)庫(kù)源
編輯創(chuàng)建mariadb.repo倉(cāng)庫(kù)文件
vi /etc/yum.repos.d/MariaDB.repo
2、添加repo倉(cāng)庫(kù)配置
[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/10.1/centos7-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1
3、yum下載
yum install MariaDB-server MariaDB-client -y
4、啟動(dòng)mysql
systemctl start mariadb(通過(guò)yum下載的,可以使用systemctl管理)
5、初始化mysql
mysql_secure_installation
mysql.png
6、登錄mysql客戶端
mysql -uroot -p
二、安裝uwsgi
uwsgi的安裝通過(guò)pip就可以安裝
pip install -i https://pypi.douban.com/simple uwsgi
測(cè)試uwsgi安裝是否成功方法 ----->通過(guò)uwsgi啟動(dòng)一個(gè)python web服務(wù)
1、準(zhǔn)備一個(gè)test_uwsgi.py文件,寫(xiě)入代碼:
def application(env, start_response):
start_response('200 OK', [('Content-Type','text/html')])
return [b"Hello World,im uwsgi....."] # python3
2、通過(guò)命令啟動(dòng)這個(gè)文件
uwsgi --http :8000 --wsgi-file test_uwsgi.py
3、瀏覽器測(cè)試訪問(wèn)
http://167.179.88.178:8000/
測(cè)試uwsgi安裝是否成功方法 ----->通過(guò)uwsgi啟動(dòng)一個(gè)Django項(xiàng)目
1、準(zhǔn)備好Django項(xiàng)目
2、在Django項(xiàng)目目錄下執(zhí)行一下命令:
uwsgi --http :8000 --module projects_name.wsgi
3、瀏覽器測(cè)試訪問(wèn)
http://167.179.88.178:8000/
三、安裝nginx
1、 nginx解決依賴(lài)關(guān)系
yum install gcc patch libffi-devel python-devel zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel openssl openssl-devel -y
2、切到opt目錄,下載nginx安裝包
cd /opt
wget -c https://nginx.org/download/nginx-1.12.0.tar.gz
3、解壓安裝包
tar -zxvf nginx-1.12.0.tar.gz
4、切換進(jìn)入nginx目錄
cd nginx-1.12.0
5、配置,編譯安裝到指定目錄/opt/nginx1-12/
./configure --prefix=/opt/nginx1-12/ #這里不會(huì)生成文件夾
make && make install
6、啟動(dòng)nginx,進(jìn)入sbin目錄,找到nginx啟動(dòng)命令
進(jìn)入nginx主目錄,所有東西都在這了:cd /opt/nginx1-12
進(jìn)入可執(zhí)行命令目錄:cd sbin
nginx相關(guān)命令:
./nginx :?jiǎn)?dòng)
ps -ef |grep nginx :檢查端口和進(jìn)程
./nginx -s stop :關(guān)閉
./nginx -s reload :重啟(啟動(dòng)nginx服務(wù)時(shí))
./nginx -t :檢測(cè)nginx.conf語(yǔ)法是否正確
四、uwsgi和nginx對(duì)應(yīng)的配置項(xiàng)
1.創(chuàng)建uwsgi的配置文件 uwsgi.ini,文件放哪里都可以
按照一下相關(guān)配置對(duì)應(yīng)配置好相關(guān)信息:
[uwsgi]
# Django項(xiàng)目目錄
chdir=/www/my_projects/server_manager/
# 指定項(xiàng)目的application
module=server_manager.wsgi:application
# 指定sock的文件路徑---對(duì)應(yīng)的nginx通信端口
socket=127.0.0.1:8000
# 進(jìn)程個(gè)數(shù)
workers=5
#pidfile=/root/tg/myproject/script/uwsgi.pid
# 指定IP端口
http=0.0.0.0:8080
# 指定靜態(tài)文件
static-map=/static=/www/my_projects/server_manager/static
# 啟動(dòng)uwsgi的用戶名和用戶組
uid=root
gid=root
# 啟用主進(jìn)程
master=true
# 自動(dòng)移除unix Socket和pid文件當(dāng)服務(wù)停止的時(shí)候
vacuum=true
# 序列化接受的內(nèi)容,如果可能的話
thunder-lock=true
# 啟用線程
enable-threads=true
# 設(shè)置自中斷時(shí)間
harakiri=30
# 設(shè)置緩沖
post-buffering=4096
# 設(shè)置日志目錄
daemonize=/www/my_projects/uwsgi.log
2、測(cè)試uwsgi配置是否成功
uwsgi --http :8080 --module server_manager.wsgi
瀏覽器可以輸入 http://167.179.88.178:8080
測(cè)試項(xiàng)目是否可以啟動(dòng)
3、創(chuàng)建存放Django靜態(tài)文件的目錄:
mkdir /opt/static/django
4、配置django項(xiàng)目settings.py文件
ALLOWED_HOSTS = ['*']
#收集靜態(tài)文件的目錄,靜態(tài)文件內(nèi)容都放這里了
STATIC_ROOT='/opt/static/django'
STATIC_URL = '/static/'
STATICFILES_DIRS=[
os.path.join(BASE_DIR,"static"),
]
STATIC_ROOT 文件夾 是用來(lái)將所有STATICFILES_DIRS中所有文件夾中的文件,以及各app中static中的
文件都復(fù)制過(guò)來(lái),把這些文件放到一起是為了用nginx等部署的時(shí)候更方便。
5、在Django項(xiàng)目下執(zhí)行一下命令來(lái)收集靜態(tài)文件:
python manage.py collectstatic
6、nginx配置
vi /opt/nginx1-12/conf/nginx.conf
server {
listen 80;
server_name 167.179.88.178;
charset utf-8;
access_log /www/my_projects/logs/host.access.log;
error_log /www/my_projects/logs/host.error.log;
location / {
include /opt/nginx1-12/conf/uwsgi_params;
uwsgi_pass 127.0.0.1:8000;
index index.html index.htm;
}
location /static {
alias /opt/static/django; # 靜態(tài)文件絕對(duì)路徑
}
7、通過(guò)which uwsgi
命令找到uwsgi可執(zhí)行命令的絕對(duì)路徑
/usr/bin/uwsgi
8、cd 到第一步創(chuàng)建的uwsgi.ini 文件的目錄執(zhí)行一下命令:
/usr/bin/uwsgi --ini uwsgi.ini
輸出結(jié)果為一下內(nèi)容:
[root@vultr my_projects]# /usr/bin/uwsgi --ini uwsgi.ini
[uWSGI] getting INI configuration from uwsgi.ini
[uwsgi-static] added mapping for /static => /www/my_projects/server_manager/static
[root@vultr my_projects]#
9、執(zhí)行以下命令啟動(dòng)nginx服務(wù):
/opt/nginx1-12/sbin/nginx
10、瀏覽器訪問(wèn)ip地址就可以看到部署好的項(xiàng)目了
http://167.179.88.178:80
附:服務(wù)器開(kāi)啟端口命令:
sudo firewall-cmd --zone=public --add-port=80/tcp --permanent
sudo firewall-cmd --reload
CentOS 7開(kāi)放端口和關(guān)閉防火墻
http://www.lxweimin.com/p/bad33004bb4f