準備工作
- 安裝VIM
yum install vim
- 安裝git
yum -y install git
- 安裝依賴包
yum -y groupinstall "Development tools"
yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel
mysql相關的一些依賴包
yum install mysql-devel gcc gcc-devel python-devel
虛擬環境依賴包(python3.7需要這個依賴包)
yum install libffi-devel -y
安裝python3
1.下載Python3安裝包
cd /tmp
wget https://www.python.org/ftp/python/3.7.7/Python-3.7.7.tar.xz
2.建python3存放目錄
mkdir /usr/local/python3
3.安裝Python3
tar -xvJf Python-3.7.7.tar.xz
cd Python-3.7.7
./configure --prefix=/usr/local/python3 --with-ssl
make && make install
4.創建軟鏈接
ln -s /usr/local/python3/bin/python3 /usr/bin/python3
ln -s /usr/local/python3/bin/pip3 /usr/bin/pip3
5.安裝完成,輸入python3測試
python3
創建虛擬環境
virtualenv是一個可以在同一計算機中隔離多個python版本的工具。有時,兩個不同的項目可能需要不同版本的python,如 python2.7 / python3.6 ,但是如果都裝到一起,經常會導致問題。virtualenv能夠用于創建獨立的Python虛擬環境,多個Python相互獨立,互不影響。
virtualenvwrapper這個軟件包可以讓我們管理虛擬環境變得更加簡單。不用再跑到某個目錄下通過virtualenv來創建虛擬環境,并且激活的時候也要跑到具體的目錄下去激活。
使用pip安裝包前,先更新pip。
pip3 install --upgrade pip
1.安裝virtualenv、virtualenvwrapper
pip3 install virtualenv
pip3 install virtualenvwrapper
2.進入.bashrc文件中,定義virtualenvwrapper路徑
在文末填入以下代碼并保存
vim ~/.bashrc
export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3
export WORKON_HOME=$HOME/virtualenvs
export VIRTUALENVWRAPPER_VIRTUALENV=/usr/local/python3/bin/virtualenv
source /usr/local/python3/bin/virtualenvwrapper.sh
- 指定python解釋器
- virtualenvwrapper存放虛擬環境的目錄,其中Envs為自己取得名字,以后創建的新的虛擬環境都存放在這個文件夾下。
- 設置virtualenvwrapper.sh文件路徑
3.運行.bashrc文件
source ~/.bashrc
4.創建虛擬環境
mkvirtualenv --python=/usr/bin/python3 py_web
- --python=的是你要使用的python解釋器的路徑,后面的是虛擬環境的名字。
5.mkvirtualenv常用基本命令
列出創建的所有虛擬環境名字
workon
進入某個虛擬環境
workon xxx
- xxx為虛擬環境的名字
退出虛擬環境
deactivate
刪除虛擬環境
rmvirtualenv xxx
- xxx為要刪除的虛擬環境名字
異常情況
假如source ~/.bashrc時,提示以下錯誤
source ~/.bashrc
-bash: /usr/local/bin/virtualenvwrapper.sh: No such file or directory
【原因】
.bashrc文件中的virtualenvwrapper.sh所在目錄錯誤。
【解決方案】
①查找virtualenvwrapper.sh所在目錄
find / -name "virtualenvwrapper.sh"
/usr/local/python3/bin/virtualenvwrapper.sh
②把.bashrc文件的virtualenvwrapper.sh目錄更改為實際所在目錄
source /usr/local/python3/bin/virtualenvwrapper.sh # virtualenvwrapper.sh實際所在目錄
假如創建虛擬環境時,提示以下錯誤
mkvirtualenv my_env
ERROR: virtualenvwrapper could not find virtualenv in your path
【解決方案】
①查找virtualenv所在目錄
find / -name "virtualenv"
/usr/local/python3/bin/virtualenv
②創建軟鏈接
ln -s /usr/local/python3/bin/virtualenv /usr/local/bin/virtualenv
進入虛擬環境安裝flask
workon xxx
pip install flask
如果已經寫好代碼了可在本地運行
pip freeze > requirements.txt
導出requirements文件,然后到虛擬環境中安裝
pip install -r requirements.txt
CentOS7下使用YUM安裝MySQL5.6
1.檢查系統中是否已安裝 MySQL。
rpm -qa | grep mysql
返回空值的話,就說明沒有安裝 MySQL 。
2.查看已安裝的 Mariadb 數據庫版本。
rpm -qa|grep -i mariadb
3.卸載已安裝的 Mariadb 數據庫。
rpm -qa|grep mariadb|xargs rpm -e --nodeps
4.再次查看已安裝的 Mariadb 數據庫版本,確認是否卸載完成。
rpm -qa|grep -i mariadb
5.下載安裝包文件。
wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm
6.安裝mysql-community-release-el7-5.noarch.rpm包
rpm -ivh mysql-community-release-el7-5.noarch.rpm
執行 yum repolist all | grep mysql 命令查看可用的 mysql 安裝文件。
6.安裝mysql。
yum install mysql-server
7.檢查mysql是否安裝成功。
rpm -qa | grep mysql
8.啟動 mysql 服務 。
systemctl start mysqld.service #啟動 mysql
systemctl restart mysqld.service #重啟 mysql
systemctl stop mysqld.service #停止 mysql
systemctl enable mysqld.service #設置 mysql 開機啟動
9.設置密碼 。
mysql5.6 安裝完成后,它的 root 用戶的密碼默認是空的,我們需要及時用 mysql 的 root 用戶登錄(第一次直接回車,不用輸入密碼),并修改密碼。
mysql -u root
mysql> use mysql;
mysql> update user set password=PASSWORD("這里輸入root用戶密碼") where User='root';
mysql> flush privileges;
10.設置遠程主機登錄
mysql> GRANT ALL PRIVILEGES ON *.* TO 'your username'@'%' IDENTIFIED BY 'your password';
執行以下命令,為root 用戶添加遠程登錄的能力。
mysql> GRANT ALL PRIVILEGES ON *.* TO root@"%" IDENTIFIED BY "123456";
安裝uwsgi
1.安裝
pip3 install uwsgi
ln -s /usr/local/python3/bin/uwsgi /usr/bin/uwsgi
安裝完成后建立軟鏈接
2.配置ini配置文件(可寫在任意地方)
[uwsgi]
chdir = /root/ffwang/app/wxms
socket = /tmp/logs/wxms.sock
http=0.0.0.0:5000
virtualenv =/root/virtualenvs/py_web
wsgi-file=manager.py
callable = app
master = true
vacuum = true
processes = 2
thunder-lock = true
#防止驚群
harakiri = 60
#超時時間(秒)
daemonize = /tmp/logs/wxms.log
#進程會在后臺運行,并輸出日志
pidfile = /tmp/logs/wxms.pid
enable-threads = true
preload=True
lazy-apps=true
3.啟動uwsgi
uwsgi --ini xxx.ini
4.停止uwsgi
uwsgi --stop XXX/XXX.PID
安裝nginx
1.下載nginx
下載版本號可根據目前官網最新穩定版自行調整
wget -c https://nginx.org/download/nginx-1.16.1.tar.gz
2.解壓和安裝
tar -zxvf nginx-1.16.1.tar.gz
cd nginx-1.16.1
使用默認配置
./configure
編譯安裝
make && make install
3.查找安裝路徑,默認都是這個路徑
whereis nginx
ln -s /usr/local/nginx/sbin/nginx /usr/bin/nginx
4.啟動nginx
nginx #啟動
nginx -s stop #停止
nginx -s quit #退出停止
nginx -s reload #重新加載配置文件,修改nginx.conf后使用該命令,新配置即可生效
ps aux|grep nginx #查看進程找到master進程
kill -HUP XXX #重啟nginx
5.問題
uwsgi wxms.sock文件不要放在root目錄下,要不nginx會報錯