管理程序(Supervisor)是一个过程控制系统,它使启动、停止和重新启动你的Vapor应用程序变得很容易。
安装(Install)
sudo apt-get update
sudo apt-get install supervisor
配置(Configure)
您的服务器上的每个Vapor应用程序都应该有自己的配置文件。对于一个示例Hello
项目,配置文件将位于/etc/supervisor/conf.d/hello.conf
[program:hello]
command=/home/vapor/hello/.build/release/Run serve --env=production
directory=/home/vapor/hello/
user=www-data
stdout_logfile=/var/log/supervisor/%(program_name)-stdout.log
stderr_logfile=/var/log/supervisor/%(program_name)-stderr.log
正如在我们的配置文件中所指定的,Hello
项目位于用户vapor
的主文件夹中。确保目录指向Config/
文件夹所在的项目的根目录。
--env=production
标志将禁用详细日志记录,并优先处理配置文件的Config/production
子文件夹。
环境(Environment)
你可以将变量导出到你的Vapor应用上。
environment=PORT=8123
导出的变量可以在Vapor的配置文件中使用$
前缀。
Config/production/servers.json
{
"port": "$PORT"
}
上面的配置文件将在由主管导出的端口号上启动一个名为my-server
的服务器。这是一种很好的方式来控制Vapor从主管配置脚本开始的过程。您可以随意地给服务器命名。
开始(Start)
您现在可以加载并启动应用程序。
supervisorctl reread
supervisorctl add hello
supervisorctl start hello
注意
该add
命令可能已经启动了您的应用程序。