一、复制项目到服务器

 如果是服务器到服务器,可以使用scp命令,可自行搜索。

scp [选项] [源文件] [目标路径]

这里用的mobaXterm自带的sftp上传文件到服务器指定路径,通常压缩后上传,再使用tar命令解压即可。

注:项目如果在本地运行过,pycharm会在项目根目录创建一个venv的虚拟环境文件,这个最好不要上传。

tar -zxvf project.tar

# 报错可能是文件不支持gzip,使用xvf参数
tar -xvf project.tar

二、创建虚拟环境

若服务器是刚初始化,无conda,可参考另一篇文章linux安装annconda3-CSDN博客进行安装。

# 创建虚拟环境
conda create -n venvName python==3.12.11
 
# 激活环境
conda activate venvName 
 
# 查看当前所有虚拟环境
conda env list

三、安装依赖

项目本身的依赖,包含在本地的venv中,可能会因为本地和服务器系统版本或默认路径原因导致报错,因此这里重新安装依赖。

1.手动安装依赖
# 举例
pip install numpy
2.通过requirements.txt安装

进入到项目的根目录,直接执行requirements.txt文件安装依赖。如果没有该文件看最后如何生成。

pip install -r requirements.txt

# 如果因为网络问题导致安装失败,使用镜像源下载
pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple

四、启动项目

运行nohup命令,执行main.py,即后台启动并挂起。

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

五、检查是否启动

查看python进程,若显示有启动的项目名即运行成功。

ps -ef | grep python

六、生成requirements.txt(不需要则跳过)

1、查看包

pip freeze 是一个 Python 命令,用于列出当前虚拟环境(virtual environment)中安装的所有 Python 包及其版本。这个命令在创建项目的依赖清单(requirements.txt)时非常有用,以便在其他环境中重新安装相同的依赖包。

使用 Pycharm 打开工程,在下方中打开Terminal终端,输入pip freeze ,可查看项目所安装的所有第三方库。

pip freeze

2、生成requirements.txt

在终端中输入pip freeze > requirements.txt,可在工程目录下生成requirements.txt文件,其中包含当前虚拟环境中安装的所有 Python 包及其版本。

pip freeze > requirements.txt

3、检查requirements.txt

文件默认生成在项目根目录,检查如下格式即可。

但如果生成如下格式,带有@file的路径,使用如下代码即可。

(这是 pip 安装软件包的一种特殊语法(自19.1开始受支持)PEP404,但是该种路径取决于环境,file:///URL 仅在本地文件系统上可用,你不能将生成的 requirements.txt 文件在另一台电脑上使用。)

pip list --format=freeze > requirements.txt

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐