【发布时间】:2018-11-01 02:43:43
【问题描述】:
我在 Linux 机器上将 Java Play 框架作为 API 服务器运行。我在screen 会话中运行它。这工作正常,但很麻烦,如果 Play 进程退出,或者 Linux 机器重新启动,Play 进程将不会重新启动。
Linux 上有哪些进程管理器会监控并自动重启 Play 进程?
【问题讨论】:
标签: java linux playframework process
我在 Linux 机器上将 Java Play 框架作为 API 服务器运行。我在screen 会话中运行它。这工作正常,但很麻烦,如果 Play 进程退出,或者 Linux 机器重新启动,Play 进程将不会重新启动。
Linux 上有哪些进程管理器会监控并自动重启 Play 进程?
【问题讨论】:
标签: java linux playframework process
不是play框架的问题,把你的启动shell文件添加到文件夹/etc/init.d,它是在linux操作系统启动时执行的。
【讨论】:
通过 systemd 启动进程(应该是大多数发行版上的默认进程/服务处理系统。)
您需要在 /etc/systemd/system/ 中创建一个 systemd-unit,例如名为 mywebapp.service:
[Unit]
Description=My WebApp
[Service]
ExecStart=your/full/path/start/commandhere
User=theusername
Environment=PATH=youcanaddvariables here
[Install]
WantedBy=network.target
刷新单元缓存:
systemctl daemon-reload
使用以下命令启动服务: systemctl start mywebapp
在启动时启用它(更具体地用于 Network.target):
systemctl enable mywebapp
【讨论】: