繁体   English   中英

如何使用setuptools打包Python守护程序

[英]How to package a Python daemon with setuptools

如何将Python应用程序与setuptools打包在一起,以便在安装时(例如,通过setup.py或pip)将守护程序脚本放置在适当的位置,启动它,并将其标记为在启动时自动启动?

就我而言,我的代码仅适用于Linux,因此我只关心在Linux环境(特别是Ubuntu)中安装守护程序。

我发现了几篇 文章, 描述了如何轻松地创建Python守护程序,但似乎找不到任何描述如何将它们安装在生产环境中,以便将它们视为任何其他常规守护程序或服务的内容。

我知道Ubuntu和其他发行版将其守护进程保留在/etc/init.d中,并且我知道如何使用setuptools将文件复制到文件系统上的特定位置,因此将脚本复制或符号链接到/ etc /是安全的。 init.d,然后运行chkconfig来设置它的运行时,还是有一种更安全的与分发无关的方式来安装守护程序?

通过为发行版创建适当的程序包(在Ubuntu中为.deb),可以更好地解决此问题,因为您不能保证启动脚本在发行版中的位置。 例如,arch linux使用/etc/rc.d/。 另外,复制到类似的位置将需要root用户访问权限(我认为安装python软件包并不一定需要该访问权限),并且在卸载时可能不容易逆转。

我建议您创建一个普通的setupttools安装,然后将其打包到带有/etc/init.d链接的deb中。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM