主頁(yè) > 知識(shí)庫(kù) > pycharm部署django項(xiàng)目到云服務(wù)器的詳細(xì)流程

pycharm部署django項(xiàng)目到云服務(wù)器的詳細(xì)流程

熱門(mén)標(biāo)簽:銀川電話機(jī)器人電話 預(yù)覽式外呼系統(tǒng) 外賣(mài)地址有什么地圖標(biāo)注 上海正規(guī)的外呼系統(tǒng)最新報(bào)價(jià) 企業(yè)彩鈴地圖標(biāo)注 如何地圖標(biāo)注公司 煙臺(tái)電話外呼營(yíng)銷系統(tǒng) 長(zhǎng)春極信防封電銷卡批發(fā) 電銷機(jī)器人錄音要學(xué)習(xí)什么

前言

大家想一想,如果要在一臺(tái)電腦上運(yùn)行python程序需要些什么工具呢?
顯而易見(jiàn),我們需要在電腦上安裝python應(yīng)用,配置python環(huán)境等等。那么如果我們需要在云服務(wù)器上運(yùn)行python程序的話要怎么做呢?相信大家已經(jīng)想到了,就是照葫蘆畫(huà)瓢,在云服務(wù)器上做相同的工作就好了。

1-下載python3.8壓縮包

1.1 操作系統(tǒng)

centos7.9 64位

1.2 下載python3.8 安裝包

使用如下命令下載python 3.8:

wget https://www.python.org/ftp/python/3.8.0/Python-3.8.0.tgz

如果提示-bash: wget: 未找到命令,需要先使用yum安裝wget,命令如下:

yum -y install wget

安裝完成后在secure fx可以查看解壓包的位置

2-解壓縮安裝包

2.1 通過(guò)以下命令解壓縮下載的文件:

tar zxf Python-3.8.0.tgz

2.2 輸入cd / 然后再輸入ls 可得到如下結(jié)果:
說(shuō)明已經(jīng)解壓成功

3-安裝依賴工具

因?yàn)榫幾g Python 源代碼需要依賴于很多工具,所以得先準(zhǔn)備一下,依次執(zhí)行以下命令:

yum update -y

yum groupinstall -y ‘Development Tools'

yum install -y gcc openssl-devel bzip2-devel libffi-devel

4-安裝python3.8

4.1 進(jìn)入解壓包解壓后的文件位置:
在centos中輸入:cd /Python-3.8.0

4.2 配置安裝路徑:
執(zhí)行如下命令:
1 ./configure prefix=/usr/local/python3 --enable-optimizations

–enable-optimizations是優(yōu)化選項(xiàng)(LTO,PGO 等)加上這個(gè) flag 編譯后,性能有 10% 左右的優(yōu)化,但是這會(huì)明顯的增加編譯時(shí)間。

溫馨提示:–enable-optimizations 該語(yǔ)句可能導(dǎo)致之后安裝報(bào)錯(cuò):Could not import runpy module 個(gè)人建議最好將其刪除

原因是:在低版本的gcc版本中帶有–enable-optimizations參數(shù)時(shí)會(huì)出現(xiàn)上面問(wèn)題
gcc 8.1.0修復(fù)此問(wèn)題

4.3 開(kāi)始安裝:
./configure命令執(zhí)行完畢之后創(chuàng)建一個(gè)文件 Makefile, 供下面的make命令使用,執(zhí)行make install之后就會(huì)把程序安裝到我們指定的文件夾中去。
2 make make install

如果出現(xiàn)了Could not import runpy module 先檢查有沒(méi)有按我上面說(shuō)的刪除–enable-optimizations,再者就是應(yīng)該是安裝依賴工具的時(shí)候出錯(cuò)了
如果出現(xiàn)如下錯(cuò)誤,則接著看下面的解決方法
Error Downloading Packages

文章轉(zhuǎn)自https://www.cnblogs.com/twobrother/p/11577636.html
解決方法如下:

yum出現(xiàn)Error downloading packages錯(cuò)誤

錯(cuò)誤表現(xiàn)方式:
yum可以list,可以clean cache,但是無(wú)法安裝,錯(cuò)誤提示:

Downloading packages:
Error downloading packages:
libevent-devel-2.0.21-4.el7.x86_64: [Errno 5] [Errno 2] 沒(méi)有那個(gè)文件或目錄
libevent-2.0.21-4.el7.x86_64: [Errno 5] [Errno 2] 沒(méi)有那個(gè)文件或目錄

錯(cuò)誤出現(xiàn)原因:
安裝python3修改軟鏈接,沒(méi)有完全修改導(dǎo)致

[root@duke ~]# mv /usr/bin/python /usr/bin/python2.6.6
[root@duke ~]# ln -s /usr/local/bin/python3.6 /usr/bin/python
[root@duke ~]# vi /usr/bin/yum

將文件頭部的

#!/usr/bin/python

改成

#!/usr/bin/python2.6.6

改過(guò)之后發(fā)現(xiàn)yum可以list,可以clean cache,但是無(wú)法安裝。
錯(cuò)誤解決:
把下載器中的python也修改對(duì)應(yīng)的版本

[root@duke ~]# vi /usr/libexec/urlgrabber-ext-down

將文件頭部的

#!/usr/bin/python

改成

#!/usr/bin/python2.6.6

5-修改python2軟鏈接

軟鏈接其實(shí)就相當(dāng)于我們常用的電腦主機(jī)的快捷方式

阿里云服務(wù)器的centos中會(huì)自帶一個(gè)python2.7.5,而默認(rèn)的python路徑也是python2.7.5,如果要用到我們剛才安裝的pyhton3.8的話就要修改軟鏈接。
我們首先查看一下 Python 可執(zhí)行文件的位置:
which python

然后切換到相應(yīng)的目錄:
cd /usr/bin

查看相關(guān)的python信息:
ls -la python*

發(fā)現(xiàn)當(dāng)我們執(zhí)行python 命令時(shí),系統(tǒng)指向python 2,然后python 2指向python 2.7,所以系統(tǒng)默認(rèn)使用的python版本仍然是python 2。

首先將python 改名為 python.bak

mv python python2.bak

再次查看python相關(guān)信息:

6-修改yum配置文件

進(jìn)入目錄/usr/bin,查看有關(guān)yum的文件:
ls -la yum*

使用vi 進(jìn)入文本編輯器(如果有多個(gè)yum配置文件,都要進(jìn)去修改):
vi yum
點(diǎn)擊i進(jìn)入編輯模式之后將#!/usr/bin/python 改為#!/usr/bin/python2,按ESC退出編輯模式,輸入:wq!保存修改退出。

同樣進(jìn)入文件 /usr/libexec/urlgrabber-ext-down 做同樣修改。

7-配置python

3、pip3軟鏈接

7.1配置python3軟鏈接

ln -s /usr/local/python3/bin/python3.8 /usr/bin/python
ls -la python*

配置后結(jié)果

7.2 配置pip3軟鏈接

ln -s /usr/local/python3/bin/pip3.8 /usr/bin/pip
ls -la pip*

因?yàn)閜ython3中是自帶pip3的,如果沒(méi)有的話執(zhí)行如下步驟就行了
1.安裝源

yum -y install epel-release

2.安裝pip

yum install python-pip

3.對(duì)安裝好的pip進(jìn)行升級(jí)

pip install --upgrade pip (注意是兩個(gè)短橫線~~)

如果你打完代碼后,再次查看軟鏈接情況發(fā)現(xiàn)它在閃爍的話,說(shuō)明沒(méi)有鏈接成功。
這個(gè)時(shí)候大部分原因是鏈接的路徑有問(wèn)題,不清楚centos文件路徑的同學(xué)可以下載securefx來(lái)直觀地了解文件位置,其中要?jiǎng)?chuàng)建軟鏈接要遵守這個(gè)規(guī)則 ln -s [源文件] [軟鏈接文件]

8-檢驗(yàn)配置結(jié)果

在服務(wù)器中輸入 python --version和pip -V
結(jié)果如下:

到了這一步的話,你的python環(huán)境已經(jīng)在服務(wù)器上搭建完成了,接下來(lái)就是將我們的django項(xiàng)目上傳到服務(wù)器中。

9-上傳并部署Django項(xiàng)目

9.1 將Django打包上傳到SecureCRT
先吧自己的Django項(xiàng)目整成壓縮包,然后在 SecureFx中新建一個(gè)名為Sever的文件夾,將壓縮包丟進(jìn)去,就像這樣

依次執(zhí)行下列語(yǔ)句獲取rar解壓方法

wget http://www.rarlab.com/rar/rarlinux-x64-5.3.0.tar.gz
tar -xf rarlinux-x64-5.3.0.tar.gz
cd rar
make
rar  x  test.rar  //解壓 test.rar 到當(dāng)前目錄

為了后面方便更改代碼,這里我們辛苦一點(diǎn)在Pycharm中同步部署我們的Django項(xiàng)目
步驟如下:
1、在“工具(Tools)”菜單中找到“部署(Deployment)”選項(xiàng),選擇子菜單中的“配置(Configuration…)”選項(xiàng)。

2、在部署(Deployment)窗口中點(diǎn)擊加號(hào)(+)按鈕,設(shè)置服務(wù)器配置的名稱和類型(選擇SFTP)

3、在配置界面的“連接(Connection)”設(shè)置中,分別添加:服務(wù)器IP地址、端口(默認(rèn)22)、服務(wù)器中存放源碼的目錄以及登錄服務(wù)器的賬號(hào)名稱與密碼

提示:完成配置之后,點(diǎn)擊“測(cè)試SFTP連接(Test SFTP connection…)”按鈕進(jìn)行服務(wù)器連接測(cè)試,保證配置正確

4、然后,切換到“映射(Mappings)”的設(shè)置,選擇本地源碼所在目錄以及服務(wù)器上傳源碼的目錄。

5、在選項(xiàng)設(shè)置中,我們選擇自動(dòng)將修改內(nèi)容上傳服務(wù)器的操作,這里我們可以選擇“明確的保存動(dòng)作(On explicit save action)”。也就是說(shuō)當(dāng)我們按下快捷鍵“Ctrl+S”時(shí),系統(tǒng)會(huì)自動(dòng)上傳修改內(nèi)容到服務(wù)器。

6、好了,到這一步你的Pycharm就已經(jīng)和云服務(wù)器連接起來(lái)了,你可以在本地修改代碼以及在終端運(yùn)行代碼后會(huì)自動(dòng)同步至云服務(wù)器上。

好了,經(jīng)過(guò)上面這么繁瑣的操作后,你已經(jīng)完成了80%了,加油,勝利快到了。

9.2 安裝Django

pip3 install django

安裝好了后進(jìn)入python,輸入下圖語(yǔ)句可以查看django的版本

9.3 安裝uwsgi

pip3 install uwsgi

安裝成功后輸入uwsgi是這個(gè)樣子

給uwsgi建立軟鏈接

ln -s /usr/local/python3/bin/uwsgi /usr/bin/uwsgi

9.4 配置Django項(xiàng)目
本博主使用到的項(xiàng)目已經(jīng)是連接到Mysql中并且建立好數(shù)據(jù)庫(kù)的了,不懂怎么連接與配置mysql的同學(xué)可以新開(kāi)一個(gè)網(wǎng)頁(yè)去搜一下,在這里我就不做過(guò)多的說(shuō)明了。

9.4.1數(shù)據(jù)庫(kù)遷移
這個(gè)步驟博主遇到的錯(cuò)誤非常之多,希望你們可以一次遷移成功吧。
首先要到我們的服務(wù)器存放的路徑下,我的服務(wù)器存放的路徑是 cd /Server/GroupProject

然后依次運(yùn)行

python manage.py makemigrations
python manage.py migrate

因?yàn)槲抑坝龅降膯?wèn)題太多,我現(xiàn)在也記不太起來(lái)了,主要是1054 1366這幾個(gè)錯(cuò)誤,遇到了也不要慌CSDN都能找到解決方法,總得來(lái)說(shuō)報(bào)錯(cuò)一般是你在一開(kāi)始建立數(shù)據(jù)庫(kù)的時(shí)候沒(méi)有設(shè)置中文,而你卻在建表的時(shí)候設(shè)置了中文,這個(gè)時(shí)候如果你的Django里邊有中文字段的話就會(huì)報(bào)錯(cuò),所以說(shuō)如果你想要讓數(shù)據(jù)庫(kù)全中文支持的話,最好重新建一個(gè)數(shù)據(jù)庫(kù)的同時(shí)設(shè)置中文,這樣就基本不會(huì)有問(wèn)題了。

附上建庫(kù)同步設(shè)置中文方法:
mysql:CREATE DATABASE 數(shù)據(jù)庫(kù)名 DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
再不行的話試試這樣:
vi /etc/my.cnf

文本添加內(nèi)容

[client]
default-character-set=utf8
[mysql]
default-character-set=utf8
[mysqld]
collation-server=utf8_general_ci
character-set-server=utf8
init-connect=‘SET NAMES utf8'

另外,不要忘記在pycharm主項(xiàng)目中的setting中添加這個(gè),目的是所有ip都可以訪問(wèn)。


9.4.2 安裝nginx

安裝解壓包 wget http://nginx.org/download/nginx-1.13.7.tar.gz
解壓 tar -zxvf nginx-1.13.7.tar.gz
依次執(zhí)行以下命令:

cd nginx-1.13.7

./configure

make

make install

注意:nginx一般默認(rèn)安裝好的路徑為/usr/local/nginx

配置nginx

vim /etc/nginx/nginx.conf

添加以下內(nèi)容

9.5 運(yùn)行Django項(xiàng)目

好了到了這個(gè)時(shí)候你已經(jīng)可以通過(guò)ip來(lái)打開(kāi)我們的Django項(xiàng)目了。
博主的實(shí)例是一個(gè)Django自帶的admin后臺(tái),可以方便直觀地檢測(cè)我們項(xiàng)目是否正常運(yùn)行。
首先進(jìn)入項(xiàng)目路徑 cd /Server/GroupDjango
然后輸入 python manage.py runserver 0.0.0.0:8000

注意??! 這里的python指的是之前我們軟鏈接指向的路徑,我這里是用python指向python3.8這個(gè)應(yīng)用的,如果報(bào)錯(cuò)的話,可以回去看看軟鏈接設(shè)置的對(duì)不對(duì)。

最后,成功運(yùn)行后的結(jié)果如下

我們可以通過(guò)http:// 服務(wù)器ip地址:8000/admin/來(lái)訪問(wèn)admin后臺(tái)

如果還需要

到此這篇關(guān)于pycharm部署django項(xiàng)目到云服務(wù)器的詳細(xì)流程的文章就介紹到這了,更多相關(guān)pycharm部署django到云服務(wù)器內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:
  • 使用PyCharm配合部署Python的Django框架的配置紀(jì)實(shí)
  • 利用Pycharm + Django搭建一個(gè)簡(jiǎn)單Python Web項(xiàng)目的步驟
  • 社區(qū)版pycharm創(chuàng)建django項(xiàng)目的方法(pycharm的newproject左側(cè)沒(méi)有項(xiàng)目選項(xiàng))
  • Pycharm+django2.2+python3.6+MySQL實(shí)現(xiàn)簡(jiǎn)單的考試報(bào)名系統(tǒng)
  • 使用PyCharm創(chuàng)建Django項(xiàng)目及基本配置詳解
  • 部署Django到阿里云服務(wù)器教程示例
  • 基于騰訊云服務(wù)器部署微信小程序后臺(tái)服務(wù)(Python+Django)

標(biāo)簽:上饒 潮州 西寧 珠海 佳木斯 宜昌 湖北 盤(pán)錦

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《pycharm部署django項(xiàng)目到云服務(wù)器的詳細(xì)流程》,本文關(guān)鍵詞  pycharm,部署,django,項(xiàng)目,到,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《pycharm部署django項(xiàng)目到云服務(wù)器的詳細(xì)流程》相關(guān)的同類信息!
  • 本頁(yè)收集關(guān)于pycharm部署django項(xiàng)目到云服務(wù)器的詳細(xì)流程的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章