本環境是使用Ubuntu16.04+Django2.1.0+python3.6+uwsgi+nginx進行配置前端
Ubuntu16.04中本來安裝的是python3.5,可是咱們運行環境使用python3.6比較好,有的庫3.5是用不了的,安裝過程以下:vue
首先安裝python3.6,在terminal中輸入node
sudo apt-get install software-properties-common sudo add-apt-repository ppa:jonathonf/python-3.6 sudo apt-get update sudo apt-get install python3.6
如今在命令行中輸入python3獲得的python版本仍然是python3.5,因此咱們須要一處原來的快捷方式python
cd /usr/bin rm python3
而後再建立快捷方式mysql
ln -s python3.6 python3
輸入python3能夠獲得咱們想要的結果nginx
而後在terminal中輸入以下命令安裝pip3便可git
apt-get install python3-pip
pip3 install django==2.1.0
由於咱們須要完成網站代碼版本管理,也是爲了可以比較方便地更新服務器代碼,因此咱們在服務器上安裝gitgithub
首先在terminal中直接輸入sql
sudo apt-get install git
安裝好以後須要設置郵箱和用戶名數據庫
git config --global user.name "Your Name" git config --global user.email "email@example.com"
若是你的項目是私有項目的話還須要生成SSH公鑰,具體請點擊這裏查看教程。
咱們後端的數據庫使用的是mysql,在ubuntu上安裝比較簡單,只須要幾條命令便可。
sudo apt-get install mysql-server apt-get install mysql-client sudo apt-get install libmysqlclient-dev
如今在terminal中輸入mysql
能夠直接進入mysql,接下來咱們要設置密碼,首先進入進入mysql,而後輸入以下代碼
use mysql; update user set authentication_string=PASSWORD("這裏輸入你要改的密碼") where User='root'; #更改密碼 update user set plugin="mysql_native_password"; #若是沒這一行可能也會報一個錯誤,所以須要運行這一行 flush privileges; #更新全部操做權限 exit
如今在terminal中輸入
mysql -u root -p
而後輸入你剛剛設置的密碼便可登陸進數據庫,加下來咱們要配置容許數據庫進行遠程鏈接,方便咱們進行調試
mysql -u root -p GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'%'IDENTIFIED BY 'mypassword' WITH GRANT OPTION; FLUSH PRIVILEGES; sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf //註釋掉bind-address = 127.0.0.1 service mysql restart
如今你就能夠遠程鏈接數據庫了。(記得打開服務器3306安全組)
直接pip3安裝就能夠
pip3 install uwsgi
接下來測試uwsgi是否能使用,實現使用git將你的項目clone到home文件夾中,而後在terminal中執行以下命令
uwsgi --chdir 你的項目路徑 --http :8001 --module 你的項目名稱.wsgi:application
這時候打開 你的IP:8001,若是打不開,請開放8001安全組,接下來再打開網頁的話應該是能夠正常訪問的
若是項目前端使用的是vue,還要安裝nodejs
sudo apt-get install nodejs sudo apt-get install npm npm config set registry http://registry.npm.taobao.org/ npm install -g @vue/cli
sudo apt-get install -y python3.6-dev apt install nginx
等待一會就能夠安裝完畢,安裝完成以後執行以下命令
cd /etc/nginx/sites-enabled/ sudo rm default cd .. cd sites-available/ vim mysite.conf
在打開的文件中輸入以下內容
server { listen 443; server_name mysite; charset utf-8; client_max_body_size 75M; location /static { alias /home/你的項目名稱/static; } location /media { alias /home/你的項目名稱/media; } location / { uwsgi_pass 127.0.0.1:8001; include /etc/nginx/uwsgi_params; # the uwsgi_params file you installed } }
而後再繼續輸入命令:
cd /home mkdir mysite_uwsgi cd mysite_uwsgi vim mysite.ini
在打開的文件中輸入以下內容
[uwsgi] chdir = /home/你的項目名稱 module = 你的項目名稱.wsgi:application master=True processes = 4 harakiri = 60 max-requests = 5000 socket = 127.0.0.1:8001 uid = 1000 gid = 2000 pidfile = /home/mysite_uwsgi/master.pid deamonize=/home/mysite_uwsgi/mysite.log vacuum=True
這個時候啓動uwsgi,輸入
uwsgi --ini /home/mysite_uwsgi/mysite.ini
運行成功以後再輸入
ps -aux | grep uwsgi
若進程顯示如圖所示,則表示配置成功
再執行以下命令
ln -s /etc/nginx/sites-available/mysite.conf /etc/nginx/sites-enabled/mysite.conf service nginx restart
這個時候訪問你的ip應該就能正常訪問了