您的位置:首页 > 运维架构 > Linux

linux 下部署Python项目

2019-02-18 15:32 295 查看

2019-02-18  by 崔斐然 

笔记笔记笔记。。不要看项目,(手动捂脸)我自己的一个记录而已

目录

一、启用ROOT账户及密码和ssh

二、安装screen实现不掉线运行程序

三、部署Python项目 

四、部署项目环境

五、善后

 

 

一、启用ROOT账户及密码和ssh

对于谷歌云,先使得ssh登陆这样也好操作,

使用Google Cloud网页版ssh,切换到root: 

[code]sudo -i

我喜欢安装nano编辑器,

[code]centos:yum install nano
ubuntu and debain: sudo apt-get install nano

使用nano编辑ssh配置文件

[code]nano /etc/ssh/sshd_config

修改以下内容使得可以用root登陆服务器:

[code]PermitRootLogin yes
PasswordAuthentication yes

如果想延长ssh终端时间的话可以同时修改这两个参数:(ClientAliveInterval 表示间隔多久向客户端发送一次检测信号,ClientAliveCountMax 表示多少次没收到客户端回应就断开。下面的设置表示30分钟内无操作就断开ssh连接)

[code]ClientAliveInterval 60
ClientAliveCountMax 30

随后,我们重启ssh并设置ssh的登陆密码:(centos7中密码需要8位以上,建议设置强密码)

[code]service sshd restart

#修改当前账户和root账户的密码
sudo passwd ${whoami}
sudo passwd root

至此,我们可以在macOS的terminal中使用 ssh root@服务器IP  来登陆我们的服务器了

二、安装screen实现不掉线运行程序

        因为我要在服务器上部署爬虫项目,总是ssh连接的话自己的电脑就不能关机,安装了screen的话就可以在screen窗口中运行项目,在登陆服务器后进入screen窗口就可以看到运行中的项目了。

安装screen:

[code]centos: yum install screen
ubuntu and debain: sudo apt-get install screen

那么关于screen的命令如下:

[code]新建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已经有项目了,现在想对项目修改以下,并在服务器运行

首先克隆代码到本地:

[code]git clone <clone URL> (例:git clone  https://github.com/cuifeiran/PyOne.git )

修改完代码后,在项目的根目录:

[code]git add . # 将修改添加至本地缓存,注意有个点
git commit -m 'update 20190218' # 将本地缓存保存到本地仓库中
git push # 将本地仓库推送至服务器
#git pull # 将服务器的代码更新到本地仓库中

这样,再登陆服务器, git clone <clone URL>即可下载到服务器

四、部署Python项目环境

以前用的是debain9,自带Python3 ,现在换成了centos7,里面只有Python2 ,下面讲怎么让Python2与Python3在contos7中共存

我们先安装相关包:

[code]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)

[code]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/python3

make && make install

现在已经安装好Python3.6.2了,剩下的我们创建软连接才能用,因为我要用到Python2 ,

所以下面是共存的办法

[code]#建立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的话就下面这样:

[code]#创建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,方法:

[code]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://www.geek-share.com/detail/2763397540.html

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: