作者:李冰或李冰圆_862 | 来源:互联网 | 2023-05-20 00:10
我在我的服务器(ubuntu)上安装了loopback,然后创建了一个应用程序并使用命令slc run来运行......一切都按预期工作.现在我有一个问题,也是我面临的一个问题:
问题:我需要使用slc run命令,但在关闭终端后也要保持应用程序"活着".为此,我使用了--detach选项并且它可以工作,我想知道--detach选项是最佳实践还是我需要以不同的方式进行.
问题:在我使用--detach之后,我真的不知道如何阻止它.是否有一个命令可以用来阻止进程运行?
1> Ryan Graham..:
要停止--detach
ed进程,请转到运行它的同一目录并执行slc runctl stop
.有许多runctl
命令,但stop
可能是您最感兴趣的命令.
最佳实践是一个更长的答案.简短的版本是:不要使用--detach
永远,并使用init脚本来运行您的应用程序并使其保持运行(可能是Upstart,因为您使用的是Ubuntu).
运用 slc run
如果您想slc run
以Upstart作业运行,可以安装strong-service-install npm install -g strong-service-install
.这将为您提供sl-svc-install
一个用于创建Upstart和systemd服务的实用程序.
您将最终运行类似sudo sl-svc-install --name my-app --user youruser --cwd /path/to/app/root -- slc run .
应创建一个名为Upstart的工作my-app
,该工作将从应用程序的根目录运行您的应用程序作为您的uid.您的应用程序的stdout/stderr将被发送到/var/log/upstart/my-app.log.如果您使用的是早于12.04的Ubuntu版本,则需要指定--upstart 0.6
并且您的日志将最终转到syslog.
运用 slc pm
另一种可能更容易的方法是使用slc pm
,它在上面的级别运行,slc run
并且恰好更容易安装为OS服务.对于这条路线,您已经安装了所有东西.运行sudo slc pm-install
和strong-pm
安装Upstart服务以及strong-pm
用户运行它与/ var/lib/strong-pm的$ HOME一样.
如果PM方法稍微复杂一点,那就是必须将应用程序部署到它.最有可能的只是转到你的应用程序root并运行slc deploy http://localhost:8701/
,但细节将取决于你的应用程序.您可以为应用配置环境变量,部署新版本,日志将显示在/var/log/upstart/strong-pm.log中.
一般最佳实践
对于上述任一选项,我建议不要npm install -g strongloop
在您的服务器上执行,因为它包括yeoman生成器和其他工具,这些工具在工作站上比服务器更有用.
如果你想要去的slc run
路线,你会做npm install -g strong-supervisor strong-service-install
,并取代你slc run
用sl-run
.
如果你想要去的slc pm
路线,你会做npm install -g strong-pm
和替换slc pm-install
用sl-pm-install
.
放弃
我在StrongLoop工作,主要从事这些工具.