我目前正在virtualenv中开发一个Bottle应用程序.我打算使用bjoern WSGI服务器为其提供服务(但这可能没什么大不了的).我还打算为轻量级或nginx反向代理提供服务.无论如何,该应用程序可以在其自己的virtualenv中作为系...

我目前正在virtualenv中开发一个Bottle应用程序.我打算使用bjoern WSGI服务器为其提供服务(但这可能没什么大不了的).我还打算为轻量级或nginx反向代理提供服务.无论如何,该应用程序可以在其自己的virtualenv中作为系统服务运行吗?如果是这样,怎么办呢?
解决方法:
根据我的经验,我建议您可以使用Supervisord将Web服务器作为守护程序运行.尽管您可以在/etc/init.d中编写一些Linux服务脚本,但是它们确实很难正确执行.这是一个example init.d script for nginx,可在Ubuntu中将其作为服务运行.你不想写一个,对吗?
要运行带有virtuald的依赖于virtualenv作为守护程序服务的python服务器,这是我在生产环境中使用的配置.
[program:web01]
command=/home/victorlin/tg2env/bin/paster serve production.ini ;
process_name=%(program_name)s ;
directory=/home/victorlin/ ;
user=victorlin ;
priority=999 ;
redirect_stderr=true ;
stdout_logfile=/home/victorlin/logs/web01_out.txt ;
stderr_logfile=/home/victorlin/logs/web01_err.txt ;
environment=PYTHON_EGG_CACHE=/home/victorlin/.python-eggs ;
您可以使用/ path / to / virtualenv / bin / python在命令字段中运行自己的python脚本.并且,要在启动时运行受监管的主机,可以在根帐户中编写如下的crontab:
@reboot /usr/local/bin/supervisord -c /home/root/supervisord.conf
当然,如果要打开的端口号小于1024,则可以使用非特权帐户编写此启动crontab.
本文标题为:python-从virtualenv作为Linux系统服务启动wsgi应用程序


基础教程推荐
- 利用Python将彩色图像转为灰度图像的两种方法 2023-08-04
- Python克服了Windows 255路径文件名限制并将目录归档 2023-11-12
- 基于Python编写一个自动关机程序 2023-08-11
- django+nginx+python3 生产环境部署 2023-09-04
- 解决-bash: /usr/bin/yum: /usr/bin/python2.7.15: 坏的解释 2023-09-04
- Python实现K-近邻算法的示例代码 2022-10-20
- Windows上的Python(v3.0)中的环境变量 2023-11-13
- Python并行编程(十一):基于进程的并行 2023-09-03
- 如何在Python3.5虚拟环境中安装scipy Windows 10? 2023-11-11
- python pandas数据处理之删除特定行与列 2022-08-30