我知道flask deployment options,但是对于我编写的一个如此简单的flask应用程序,所有这些选项对我来说似乎都太过分了。它与flask自己的内置服务器配合使用很好。在
workon kittapp
python run.py // runs the webserver at configured port, everything's fine
这是我的跑.py文件
^{pr2}$第一个问题是,一旦我退出ssh会话,服务器就会停止,所以我试图使用一次性的cron
作业、at now
或{
我知道我最终需要为此编写一个类似守护进程的启动脚本。只是想看看有没有其他简单而可靠的解决方案可以在ubuntu机器上部署flask应用程序?在
您可能正在查找Supervisor。在
Supervisor是一种用于类Unix系统的过程控制工具。它提供了一个易于使用的接口,可以使用config files来构建和管理类似守护进程的受监督进程。在
你可以为你的Flask应用创建一个简单的配置文件,添加到Supervisor,启动它,你就完成了。方法如下:
别紧张,对吧?但是在使用virtualenvs时有一个小问题,你就是这样。请注意,
workon
是一个shell函数,而不是PATH中的可执行文件。在运行作业之前,主管不会为您的~/.bash*
或~/.zsh*
文件提供源。它对他们一无所知。因此,workon
将不可用。相反,我们需要正确设置python路径以指向venv的bin/
目录。可以使用environment
指令来完成。在下面是一个最小的管理器配置文件:
^{pr2}$好吧,就这些了。在
你可能想看看这个关于主管的Laracasts课程:
https://laracasts.com/lessons/supervise-this
相关问题 更多 >
编程相关推荐