一、准备工作
- 开发环境:本文以pycharm为例,其他ide或文本编辑器同理。
- 服务器:本文以ubuntu为例,其他linux系统同理。
- python项目:已完成开发并能在本地正常运行。
二、项目打包
python项目打包通常使用pip
安装依赖,并通过setuptools
创建可执行的脚本。
- 安装打包工具
首先,确保你的环境中安装了setuptools
和wheel
:
pip install setuptools wheel
- 创建
setup.py
在项目根目录下创建一个setup.py
文件,内容如下:
from setuptools import setup, find_packages setup( name='your_project_name', version='0.1.0', packages=find_packages(), install_requires=[ # 这里填写项目依赖的包,例如 'flask==1.1.2', 'requests==2.25.1', ], entry_points={ 'console_scripts': [ 'your_script_name=your_package.module:main_function', ], }, )
替换your_project_name
、your_script_name
、your_package.module
和main_function
为你的项目信息。
3. 打包项目
在命令行中,进入项目根目录,执行以下命令进行打包:
python setup.py sdist bdist_wheel
打包完成后,你会在dist
目录下找到.tar.gz
和.whl
文件。
三、部署到服务器
- 上传打包文件到服务器
使用scp命令将打包好的文件上传到服务器:
scp dist/your_project_name-0.1.0-py3-none-any.whl user@your_server_ip:/path/to/deploy
- 安装项目依赖
连接到服务器,并安装项目依赖:
ssh user@your_server_ip cd /path/to/deploy pip install your_project_name-0.1.0-py3-none-any.whl
或者,如果你上传了.tar.gz
文件,可以使用以下命令安装:
pip install your_project_name-0.1.0.tar.gz
- 运行项目
安装完成后,你可以直接运行你的脚本:
your_script_name
如果需要后台运行,可以使用nohup
和&
:
nohup your_script_name &
- 查看运行日志
查看运行日志:
tail -f nohup.out
四、设置服务自启动
为了使项目在服务器启动时自动运行,可以创建一个系统服务。
- 创建服务文件
sudo nano /etc/systemd/system/your_project_name.service
添加以下内容:
[unit] description=my python project service after=network.target [service] user=user execstart=/usr/bin/python /path/to/your_script_name restart=on-failure [install] wantedby=multi-user.target
替换user
、/path/to/your_script_name
为你的用户名和脚本路径。
启动并使服务自启动
sudo systemctl start your_project_name sudo systemctl enable your_project_name
现在,你的python项目应该已经成功部署到服务器并配置为自启动服务。如果需要重启或停止服务,可以使用以下命令:
sudo systemctl restart your_project_name sudo systemctl stop your_project_name
通过以上步骤,你的python项目已经可以稳定运行在服务器上了。
到此这篇关于python项目打包部署到服务器的实现的文章就介绍到这了,更多相关python项目打包部署到服务器内容请搜索代码网以前的文章或继续浏览下面的相关文章希望大家以后多多支持代码网!
发表评论