Python项目之部署项目到服务器并启动项目
目录:
一、通过pycharm来部署项目并启动
1、在Windows本地,进入pycharm,并打开对应的Python项目,在右下角依次点击:<无解释器> --> 添加新的解释器 --> SSH

2、通过SSH连接服务器



3、服务器内省完成后,开始配置虚拟环境
(1)virtualenv自动创建虚拟环境
注释1:/root/.virtualenv/test,其中的’.virtualenv’为虚拟环境默认位置,建议更改为自己单独的路径(后附示例图)
注释2:“同步文件夹”为本地项目位置映射到服务器上的详细位置,默认位置为"/tem"目录,建议更改为自己单独的路径(后附示例图)

(2)更改虚拟环境和项目配置路径,路径配置好之后,点击创建即可,等待虚拟环境创建完成

注释3:此处选择的"/root/lys/test"其中的/lys目录在服务器上并不存在,但是创建虚拟环境时会自动创建,所以需要保证该目录在服务器上的真实性,以免冲突
(3)创建成功后,可在pycharm右下角看到新建了对应的解释器

4、(选做)如果虚拟环境创建成功后,需要再更改项目配置路径,可按以下步骤进行操作
(1)点击“工具” --> “部署” --> “配置”

(2)选择“对应的服务器” --> 点击“映射” --> 更改配置
注释4:其中本地路径为Windows本地项目位置,对应的部署路径为服务器上的项目路径

到此,项目的部署阶段便结束了,后面就是在pycharm上运行
5、运行
1、项目基础依赖安装
在pycharm中打开服务器远程终端,选择对应ip的终端,即可进行连接

1、ssh终端连接后,切换到之前配置的/root/lys目录下,并查看目录下的内容
cd /root/lys && ll
2、激活虚拟环境
source test/bin/activate

3、切换到Python项目目录下
cd OnlineStoreSalesDataScreen/ && ll
注释5:项目的依赖包文件在哪里,就切换到哪个目录下

4、安装项目依赖
pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple
依赖安装完成后,即可在终端运行项目。Django项目运行命令:
python manage.py runserver ip:8000
运行成功后即可看到开放了一个链接,对应服务器的8000端口

通过Windows本地浏览器访问该链接即可

二、部署到python项目到linux服务器并后台启动
1、安装Python3环境
2、部署python应用
2.1. 将本地开发环境的依赖项目生成清单文件
在项目所在目录执行命令:pip freeze > requirements.txt
将当前项目使用的python解释器中的依赖包保存到requirements.txt 文件中
清单文件将会生成在当前项目目录下,内容如下所示:

2.2.将Python项目上传到服务器
3、为项目创建虚拟环境
将项目拷贝至服务器上后,进入项目文件中,用命令:python -m venv env_name 创建虚拟环境,
其中env_name 为虚拟环境的名称
注意:Python2、Python3.3之前的版本需要使用pip手动安装virtualenv,创建虚拟环境命令为 python -m
virtualenvenv_name
启动创建的虚拟环境:通过命令 source 环境名称/bin/activate ,虚拟环境激活之后,对应的环境名会出现在命令行
关闭虚拟环境的命令:deactivate

4、安装对应项目的依赖包
虚拟环境启动之后,在虚拟环境中安装我们对应项目的依赖了,命令:
pip3 install -r requirements.txt安装项目的依赖包(requirements.txt为项目收集的依赖包地址)
执行下载requirements文件内依赖名命令

当前虚拟环境存放在已下载好的

- 如果对应的Linux环境中未配置国内镜像源,导致依赖包安装缓慢,可以通过命令 pip install -i 国内镜像源地址 -r requirements.txt 安装项目依赖包
- 如果没有requirements.txt,也可以直接使用命令: pip install 第三方库名 进行安装
5、运行主程序文件
- 在虚拟环境可以直接通过命令:python xx.py
运行程序文件,但是该命令无法让主程序文件处于后台运行状态,一旦关闭会话页面,程序就会停止 - 为了让程序能够在后台运行,可以使用命令:nohup python xx.py,该命令可以让程序文件处于后台运行
状态,并且能够将运行日志收集到nohup.out文件中。
更多推荐


所有评论(0)