mac把python项目部署到ubuntu服务器没有root权限并且做定时任务

1、首先是把自己的项目代码上传到服务器中

点击shell,左边点击sftp安全文件传输,右边新建远程连接点击+号添加服务器IP地址,填写用户,点击链接。或者是直接在终端执行以下命令:

sftp 【你的用户名】@IP地址

然后把什么.git、 env、log、存放测试结果、.DS_Store、__pycache__等等的垃圾都不要上传了。

put -r 【本地项目文件绝对路径】【存放在服务器的哪个目录中】

例子:假设我的项目所有代码都放在了project中:

put -r /User/【用户名】/project/ /home/【用户名】/

2、安装运行环境 

系统自带py2.7都2020年了,py2.7已经推出历史舞台,虽然系统是自带python3.8,但是要意识到此时没有root权限,一台服务器下面会对应有很多的用户,每一个用户都用同一个环境,就会有很多包,所以每一个用户都要有一个属于自己的环境。下载pyenv。先回家然后克隆,不回家也行,到你clone的地方ls -a找到.pyenv即可,pwd这就是你的安装pyenv的路径。

ssh 【用户名】@【服务器的IP】
cd ~
git clone https://github.com/pyenv/pyenv.git ~/.pyenv

如果你是mac用户而且你可以翻墙,下载homebrew是最爽的,所以还是在公司爽。

brew update
brew install pyenv

配置环境:

vim ~/.bash_profile
export PYENV_ROOT="$HOME/.pyenv"
export PATH="$PYENV_ROOT/bin:$PATH"
export PYENV_VIRTUALENV_DISABLE_PROMPT=1
if command -v pyenv 1>/dev/null 2>&1; then
  eval "$(pyenv init -)"
fi
eval "$(pyenv virtualenv-init -)"

Shift +z+z或者是:wq!

exec "$SHELL"

如果所有的命令都用不了执行一下:

export PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin

自己检查环境配置,电脑是不会瞎的,只有人会瞎,例如我。

pyenv install【python版本号】
例如:
pyenv install 3.5.9

创建虚拟环境venv359 :

pyenv virtualenv 3.5.9  venv359 

 激活虚拟环境:

pyenv activate venv359

然后就可以执行: 

pip3 install -r requirement.txt

这是对设置定时任务 有帮助

 3、配置定时任务

crontab -e

请读者自己滚去菜鸟教程看语法

⚠️注意:例如我用的是python3执行,当前系统有一个py2.7还有一个py3.8,然后虚拟环境是py3.5所以执行的时候要用绝对路径指定是哪一个python3.在服务器中执行,在激活虚拟环境的前提下

python3

输入以下内容,复制结果。

>>> import sys
>>> sys.executable

⚠️注意:最好给老娘添加日志。

⚠️注意:全部都要写绝对路径,怕电脑是路痴找不着。

例子:我要在每晚0点执行一次。

0 0 * * * /home/zengyiming/.pyenv/versions/venv359/bin/python3 /home/zengyiming/【项目的有主函数的文件】 >> /home/zengyiming/【项目文件夹】/log/c.log 2>&1

& 1 :文件描述符 1,而1标识标准输出,stdout。
2 :表示标准错误,stderr。
2>&1 :就是将标准错误重定向到标准输出。这里标准输出已经重定向到了 home/zengyiming/【项目文件】/log/c.log。就是错误日志写到了 home/zengyiming/【项目文件】/log/c.log中。

然后执行一下python3  main.py看有没有报错。如果报错import error就是说你的python环境错了,你绝对路径不正确。

4、检查日志

最后检查c.log有没有报错。不断修改自己的代码。也可以添加钉钉报警,自己发挥。

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值