Supervisor是一個(gè)過(guò)程控制系統(tǒng),可以輕松啟動(dòng),停止和重新啟動(dòng)Vapor應(yīng)用程序。
Install
sudo apt-get update
sudo apt-get install supervisor
Configure
服務(wù)器上的每個(gè)Vapor應(yīng)用都應(yīng)該有自己的配置文件。比如Hello工程的配置文件應(yīng)該在/etc/supervisor/conf.d/hello.conf中。
[program:hello]
command=/home/vapor/hello/.build/release/App 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
上面的配置指定了/home/vapor/hello/。確保directory指向了項(xiàng)目中包含Config/目錄的根目錄。
--env=production標(biāo)志禁止使用向昔日之記錄,并且對(duì)配置目錄的子文件夾Config/production的文件進(jìn)行優(yōu)先級(jí)排列。
Environment
你可以使用supervisor將變量導(dǎo)出到你的Vapor應(yīng)用中。
environment=PORT=8123
在配置文件中使用導(dǎo)出的變量需要加前綴$。
Config/production/servers.json文件中:
{
"my-server": {
"port": "$PORT"
}
}
上面的配置文件會(huì)在supervisor導(dǎo)出的端口上啟動(dòng)my-server服務(wù)器。
這是從supervisor控制Vapor應(yīng)用啟動(dòng)的方法。當(dāng)然服務(wù)器名稱(chēng)可以隨意命名。
Start
現(xiàn)在你可以加載并啟動(dòng)你的應(yīng)用了。
supervisorctl reread
supervisorctl add hello
supervisorctl start hello
Note:
add命令可能已經(jīng)啟動(dòng)你的服務(wù)器了。
<b>總結(jié):</b>至此已經(jīng)將Vapor文檔的內(nèi)容翻譯了一遍,已經(jīng)快速的了解了Vapor框架的基礎(chǔ)以及如何進(jìn)行部署等內(nèi)容。之后要開(kāi)始實(shí)戰(zhàn)練習(xí)了,fighting!!!