linux 下部署Python项目
2019-02-18? by 崔斐然?
目錄
一、啟用ROOT賬戶及密碼和ssh
二、安裝screen實現不掉線運行程序
三、部署Python項目?
四、部署項目環境
五、善后
?
?
一、啟用ROOT賬戶及密碼和ssh
對于谷歌云,先使得ssh登陸這樣也好操作,
使用Google Cloud網頁版ssh,切換到root:?
sudo -i我喜歡安裝nano編輯器,
centos:yum install nano ubuntu and debain: sudo apt-get install nano使用nano編輯ssh配置文件(ubuntu/debain):
nano /etc/ssh/sshd_configcentos:
vi /etc/ssh/sshd_config修改以下內容使得可以用root登陸服務器:
PermitRootLogin yes PasswordAuthentication yes如果想延長ssh終端時間的話可以同時修改這兩個參數:(ClientAliveInterval 表示間隔多久向客戶端發送一次檢測信號,ClientAliveCountMax 表示多少次沒收到客戶端回應就斷開。下面的設置表示30分鐘內無操作就斷開ssh連接)
ClientAliveInterval 60 ClientAliveCountMax 30隨后,我們重啟ssh并設置ssh的登陸密碼:(centos7中密碼需要8位以上,建議設置強密碼)
service sshd restart#修改當前賬戶和root賬戶的密碼 sudo passwd ${whoami} sudo passwd root至此,我們可以在macOS的terminal中使用 ssh?root@服務器IP ?來登陸我們的服務器了
二、安裝screen實現不掉線運行程序
? ? ? ? 因為我要在服務器上部署爬蟲項目,總是ssh連接的話自己的電腦就不能關機,安裝了screen的話就可以在screen窗口中運行項目,在登陸服務器后進入screen窗口就可以看到運行中的項目了。
安裝screen:
centos: yum install screen ubuntu and debain: sudo apt-get install screen那么關于screen的命令如下:
新建screen窗口: screen -S <name> (例:screen -S task1)掛起該窗口(后臺運行):先按下Ctrl+a 隨后再按 d (會提示:[detached from 8465.task1])顯示所有screen窗口:screen -ls (會顯示:8465.task1 (Detached)說明task1已經在后臺)進入指定的screen窗口:screen -x <screen name or port> (例:screen -x task1)(例:screen -x 8465)那么想要退出窗口關閉后臺呢?就先進入screen窗口在窗口中輸入exit即可 或者kill screen port (例:kill 8465)當然了,screen也可以實現多窗口、會話共享等更多功能,這里不再介紹了
三、部署項目?
? ? 部署項目有多種辦法,以前一直用ftp上傳到服務器。也就是在服務器安裝ftp即可,方法參照【基于機器學習的撿球機器人設計與實現(探索)第1篇】
現在計劃用GitHub來做中介人傳入服務器。
目前是這樣的,我的GitHub已經有項目了,現在想對項目修改以下,并在服務器運行
首先克隆代碼到本地:
git clone <clone URL> (例:git clone ?https://github.com/cuifeiran/PyOne.git?)修改完代碼后,在項目的根目錄:
git add . # 將修改添加至本地緩存,注意有個點 git commit -m 'update 20190218' # 將本地緩存保存到本地倉庫中 git push # 將本地倉庫推送至服務器 #git pull # 將服務器的代碼更新到本地倉庫中這樣,再登陸服務器, git clone <clone?URL>即可下載到服務器
四、部署Python項目環境
以前用的是debain9,自帶Python3 ,現在換成了centos7,里面只有Python2 ,下面講怎么讓Python2與Python3在contos7中共存
我們先安裝相關包:
yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gcc make然后下載并解壓Python3.6:(其他Python版本從這個鏈接選擇https://www.python.org/ftp/python/目前最高Python3.8)
wget https://www.python.org/ftp/python/3.6.2/Python-3.6.2.tar.xz tar -xvJf Python-3.6.2.tar.xz cd Python-3.6.2 ./configure prefix=/usr/local/python3make && make install現在已經安裝好Python3.6.2了,剩下的我們創建軟連接才能用,因為我要用到Python2 ,
所以下面是共存的辦法
#建立Python3軟鏈接 ln -s /usr/local/python3/bin/python3 /usr/bin/python3 #建立pip3的軟鏈接 ln -s /usr/local/python3/bin/pip3 /usr/bin/pip3至此,檢查 Python3 -V
若你想把系統Python直接上Python3的話就下面這樣:
#創建python3軟鏈接替換Python ln -s /usr/local/python3/bin/python3 /usr/bin/python #建立pip3的軟鏈接 ln -s /usr/local/python3/bin/pip3 /usr/bin/pip3對于直接上Python3的同學:因為執行yum需要python2版本,所以我們還要修改yum的配置,把yum改為Python2,方法:
nano /usr/bin/yum把第一行的:?#! /usr/bin/python ?修改為 ? ?#! /usr/bin/python2
同理,nano?/usr/libexec/urlgrabber-ext-down 文件里面的 ?#! /usr/bin/python 也要修改為 ? #! /usr/bin/python2
至此,檢查 Python?-V
五、善后
(1)成功解決You are using pip version 9.0.1, however version 9.0.3 is available. You should consider upgra?升級pip:
python -m pip install --upgrade pip
(2)安裝包:
在舊環境中導出包?pip freeze > packages.txt
在新環境中安裝包:pip install -r packages.txt
手寫也行。。寫上包名 安裝就得了。
?
?
¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥剩下的想到什么在補充¥¥¥¥¥¥¥¥¥¥¥¥¥¥
六、啟用BBR加速
我的另一篇博文專續https://blog.csdn.net/qq_33273956/article/details/88429776
總結
以上是生活随笔為你收集整理的linux 下部署Python项目的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【机器学习入门笔记12:matplotl
- 下一篇: Linux下编译opencv