阿里云服务器部署项目
在阿里云服務器上部署自己的項目
小伙伴們是不是想部署自己的項目到服務器上,讓自己的朋友,還有廣大的網友看到自己的網站呢?下面我就把部署項目到服務器的方法寫下來給大家,希望可以幫到有需要的人!!!
前期準備:
- 買一個自己的服務器
- 選擇操作系統(我下面介紹的是Ubuntu系統)
操作步驟:
1.解決python解釋器的版本和執行問題
一般情況下服務器自帶的python版本是2.7的版本,也有python3.5的版本,但是python3.5要激活.因為現在都大家都使用的是python3.8所以我們都安裝python3.8.
依次執行下面的命令:
git clone https://github.com/waketzheng/carstino#換華為的鏡像源
sudo ./carstino/change_ubuntu_mirror_sources.py#更新`apt`
sudo apt update#提供編譯程序必須軟件包的列表信息
sudo apt install -y build-essential checkinstallsudo apt install -y libreadline-gplv2-dev libncursesw5-dev libssl-dev tk-dev zlib1g-devsudo apt install -y libsqlite3-dev libgdbm-dev libc6-dev libbz2-dev libffi-dev libssl-devwget https://mirrors.huaweicloud.com/python/3.8.2/Python-3.8.2.tar.xztar xf Python-3.8.2.tar.xzcd Python-3.8.2./configure --enable-optimizationssudo make altinstallpython3.8 -Vpip3.8 -V
修改軟連接(配置全局變量)
#將原來的鏈接備份
mv /usr/bin/python /usr/bin/python.bak#添加python3的軟鏈接
ln -s /usr/local/python3/bin/python3 /usr/bin/python#測試是否安裝成功了
python -V#更新pip命令
python -m pip install --upgrade pip
2. 虛擬環境的問題解決
首先安裝虛擬環境,命令如下:
sudo pip3 install virtualenv #安裝虛擬環境
接下來還要安裝虛擬環境擴展包,命令如下:
sudo pip3 install virtualenvwrapper
安裝虛擬環境包裝器的目的是使用更加簡單的命令來管理虛擬環境。
修改用戶家目錄下的配置文件.bashrc,添加如下內容:
(就是在根目錄下面的這個文件中配置環境變量)
export WORKON_HOME=$HOME/.virtualenvsexport VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3source /usr/local/bin/virtualenvwrapper.sh
使用source .bashrc命令使配置文件生效。
創建python3虛擬環境的命令如下:
mkvirtualenv 虛擬環境名稱 # mkvirtualenv -p python3 虛擬環境名字例:mkvirtualenv django_1
在pycharm中生成安裝依賴的文件
pip freeze>requirements.txt
#這樣所有的安裝依賴都會被寫到該文本中.#workon '虛擬環境的名字'
pip install -r requirements.txt
#這樣所有的應用都會安裝到虛擬環境中.
3. 把自己的項目上傳到自己的服務器中
在這里我是使用的
xshell,安裝一個小工具上傳文件比較方便.apt -y install lrzsz把自己的項目文件夾打包成zip包,這樣就可以使用
rz命令在xshell中上傳.
上傳之后就用 Ubuntu的解壓方式解壓.sudo apt-get install unzipunzip 包名
4.安裝mysql
sudo apt install mysql-server
登錄進去mysql
mysql -uroot -p 輸入密碼:
之后就要登錄mysql.創建自己需要的數據庫,要跟自己項目中的數據庫的名字是一樣的
導進自己的sql加載到自己的數據庫中.
source /自己的sql路徑
5. 部署項目安裝需要的環境
- 配置
settings.py文件
DEBUG = False # 關閉debug調試ALLOWED_HOSTS = ['*'] # 允許任何域方法
- 收集靜態文件
# 靜態文件
STATIC_URL = '/static/'
# 注釋掉
#STATICFILES_DIRS = [
# os.path.join(BASE_DIR, 'static')
#]
STATIC_ROOT = os.path.join(BASE_DIR,'static/')#執行這個命令收集靜態文件
python manage.py collectstatic
- 安裝
uwsgi
pip install uwsgi
- 新建uwsgi.ini文件
#添加配置選擇
[uwsgi]
#配置和nginx連接的socket連接
socket = 127.0.0.1:8000
#配置項目路徑,項目的所在目錄
chdir = /Desktop/1907/test/test_common
#配置wsgi接口模塊文件路徑
wsgi-file = test_common/wsgi.py
#配置啟動的進程數
processes = 4
#配置每個進程的線程數
threads = 2
#配置啟動管理主進程
master = True
#配置存放主進程的進程號文件
pidfile = uwsgi.pid
#配置dump日志記錄
daemonize = uwsgi.log`
# 虛擬環境
virtualenv = /home/ubuntu/.virtualenvs/django_env
(備注:這里放的是虛擬環境安裝的路徑,后面還要跟上自己的虛擬環境名字)
- 安裝
nginx
sudo apt install nginx
- 配置
nginx
# configuration of the server
server {# 你的網站監聽的端口,此處先用8000端口測試,正式部署可以改為80或其他listen 80;# 你的網站的域名server_name *.com; # substitute your machine's IP address or FQDNcharset utf-8;# max upload sizeclient_max_body_size 75M; # adjust to taste# Django medialocation /media {alias /home/mysite/media; # 你的media的文件目錄}location /static {alias /home/mysite/collected_static; # 你的項目收集的靜態文件目錄(后邊會將收集靜態文件)}# Finally, send all non-media requests to the Django server.location / {uwsgi_pass 127.0.0.1:8000;include uwsgi_params; # uwsgi_params 文件所在目錄}
}
- 啟動
uwsgi
uwsgi --ini uwsgi.ini
- 啟動
nginx
/etc/init.d/nginx start
然后在瀏覽器中輸入自己的公網ip,就可以看到自己的首頁了…
總結
以上是生活随笔為你收集整理的阿里云服务器部署项目的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python with上下文管理
- 下一篇: 解释型语言与编译型的必须知识点