python - 部署 CherryPy(守护进程)

标签 python deployment cherrypy

我遵循了基本的 CherryPy 教程 (http://www.cherrypy.org/wiki/CherryPyTutorial)。未讨论的一件事是部署。

如何将 CherryPy 应用程序作为守护程序启动并“忘记它”?如果服务器重启会怎样?

有标准食谱吗?也许会创建一个服务脚本(/etc/init.d/cherrypy...)

谢谢!

最佳答案

Daemonizer 使用起来非常简单:

# this works for cherrypy 3.1.2 on Ubuntu 10.04
from cherrypy.process.plugins import Daemonizer
# before mounting anything
Daemonizer(cherrypy.engine).subscribe()

cherrypy.tree.mount(MyDaemonApp, "/")
cherrypy.engine.start()
cherrypy.engine.block()

There is a decent HOWTO for SysV style here.

总结一下:

  1. /etc/init.d 中为您的应用程序创建一个文件,该文件调用 /bin/sh

    sudo vim/etc/init.d/MyDaemonApp

    #!/bin/sh  
    echo "Invoking MyDaemonApp";  
    /path/to/MyDaemonApp  
    echo "Started MyDaemonApp. Tremble, Ye Mighty."  
    
  2. 使其可执行

    sudo chmod +x/etc/init.d/MyDaemonApp

  3. 运行 update-rc.d 以在正确的运行时目录中创建正确的链接。

    sudo update-rc.d MyDaemonApp 默认 80

  4. sudo/etc/init.d/MyDaemonApp

关于python - 部署 CherryPy(守护进程),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1463510/

相关文章:

python - 在 Cherrypy 中动态创建页面定义

tree - 如何通过配置文件将 wsgi 应用程序分配给 cherrypy 的根目录?

python - 如何从 docker 容器中的 python 脚本连接到本地主机上的 mysql 数据库

python - 在 linux 中使用 python 截取屏幕截图(VM guest )

python - numpy python 上的反向对角线

python - 如果输入数据被归一化,ML 模型会过拟合

java - Tomcat 创建 WEB-INF/lib 但不分解 war 文件 (GWT)

python - AWS 部署经常宕机

python:在cherrypy中使用json.load()时出现500错误

c# - 在 WPF 应用程序上显示 ClickOnce 部署版本