首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在引导时启动plack应用程序?

如何在引导时启动plack应用程序?
EN

Stack Overflow用户
提问于 2016-11-05 19:09:59
回答 3查看 640关注 0票数 2

有人知道如何在引导时启动plack应用程序吗。

os是raspbian(raspberry pi)。我想我已经以普通用户(Pi)的身份运行了它。这就是我手动启动的方式。

我尝试过在rc.local中添加这样的东西,但是没有成功。

su pi -c 'cd /path/to/app && plackup -d -p 5000 -r -R ./lib,./t -a ./bin/app.psgi &'

这将被Apache使用,如果有任何不同的话,应用程序是用dancer2编写的。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2016-11-22 08:02:36

问题是perl 5环境变量没有初始化(在.bashrc中)。

因此,解决方案是在bash -i中运行plackup命令,以便在调用plackup之前读取.bashrc或设置PERL5LIB。

票数 0
EN

Stack Overflow用户

发布于 2016-12-09 18:12:48

在raspberry pi上,我使用systemd在文件/etc/systemd/system/dancer.service中创建和启动服务。

代码语言:javascript
复制
[Unit]
Description=NCI Starman Dancer App
After=syslog.target

[Service]
Type=forking
ExecStart=/usr/local/bin/starman --daemonize -l 127.0.0.1:3004 \
  --user myuser --group myuser --workers 8 -D -E production \
  --pid /var/run/dancer.pid -I/home/myuser/webservers/Dancer/lib \
  --error-log=/home/myuser/logs/dancer_error.log \
  /home/myuser/webservers/Dancer/bin/app.psgi
Restart=always

[Install]
WantedBy=multi-user.target

然后我用systemctl enable dancer.service启用它,或者用systemtctl start dancer.service手动启动它。

当然,你可以使用plackup代替startman。

票数 1
EN

Stack Overflow用户

发布于 2017-05-22 22:48:50

您还可能希望使用monitsupervisord来确保应用程序始终处于运行状态,并在被任何原因杀死时重新启动,例如OOM。

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40442148

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档