命令行登录linux远程服务器,python项目部署与运行

bash命令行登录远程服务器,python项目部署与运行

1、登录远程服务器 eg: ssh -p [端口]  [用户]@[ip]

      --输入密码

2、进入项目目录:cd xxx

-----以下是基于已经安装了python,及配置好

3、创建虚拟环境:

pip install --user virtualenvwrapper # 安装 virtualenvwrapper
mkvirtualenv --python=python3.6 venv # 创建虚拟环境

  

4、cd  项目目录【必须进入项目下】

 

5、workon 进入3新建的虚拟环境

6、执行 nohub COMMAND & 

nohup python /data/python/server.py > python.log3 2>&1 &

说明:
1、1是标准输出(STDOUT)的文件描述符,2是标准错误(STDERR)的文件描述符
1> python.log 简化为 > python.log,表示把标准输出重定向到python.log这个文件
2、2>&1 表示把标准错误重定向到标准输出,这里&1表示标准输出
为什么需要将标准错误重定向到标准输出的原因,是因为标准错误没有缓冲区,而STDOUT有。
这就会导致 commond > python.log 2> python.log 文件python.log被两次打开,而STDOUT和 STDERR将会竞争覆盖,这肯定不是我门想要的
3、直接关闭shell/BASH窗口(我用的是SecureCRT,用的比较多的还有Xshell),而不用再输入exit这个命令来退出shell了

nohup和&的区别

  • & : 指在后台运行
  • nohup : 不挂断的运行,注意并没有后台运行的功能,,就是指,用nohup运行命令可以使命令永久的执行下去,和用户终端没有关系,例如我们断开SSH连接都不会影响他的运行,注意了nohup没有后台运行的意思;&才是后台运行

链接:https://www.jianshu.com/p/4041c4e6e1b0

7、lsof -i:端口  # 查看对应端口的进程
8、kill pid # 杀死进程
posted @ 2021-11-18 15:02  小毛编  阅读(429)  评论(0)    收藏  举报