问题标签 [runit]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
jetty - 从 puppet Railo-jetty 模块开始并部署它
我开始编写一个 puppet 模块来使用 runit 使用码头安装部署和管理 Railo ......任何帮助将不胜感激我知道它应该有的基础......我们需要一个 zip 文件 railo express
解压拉链
告诉系统启动文件夹中的start.sh
通过 index.cfm 页面保持运行和访问
通过在目录中调用 stop.sh 来停止服务器
所以开始谢谢
reboot - runit 在重新启动后两次生成该进程
重新启动后,runit 会重新生成它已经启动的程序。服务日志中没有错误消息。注册为服务的程序开始正常工作,但大约 10-15 秒后它被 runit 重新启动。
linux - 在 DEBIAN_FRONTEND=noninteractive install -y gcc 之后无法安装 runit
我希望自动安装 gcc 和 runnit。但是当我“sudo apt-get install gcc”时,它会出现一个对话框来选择配置。所以我用
然后我用同样的方法安装runit
但不幸的是发生了错误:它显示
而我的系统是干净的 Ubuntu10.04 。如果我不安装 gcc noninteractiv,我可以安装 runit。
希望可以有人帮帮我。
谢谢!
sidekiq - Sidekiq 无法在 runit 下停止
我们在 runit 下运行了许多服务,效果非常好。
最近开始使用 Sidekiq,这太棒了。它在 runit 下运行它。问题是在运行“sv stop”时。它并没有停止这个过程。调用 restart 实际上会启动另一个 sidekiq 实例,让旧实例继续运行。
这是我们的示例运行文件:
supervise/pid 中的 pid 文件与正在运行的 pid 匹配。
谢谢,杰里米
ruby - 我无法让 runit 与 chef 和 puma 合作,这可能是一个 runit 问题,但我不确定
这是运行脚本:
这是 runit 日志脚本:
这是我在厨师中填充这些变量的方式:
Chef 成功完成运行,但服务未启动。
如果我手动运行此命令,则会收到超时错误。
如果我运行填充 runit 脚本的确切命令,puma_command
然后 puma 成功启动,此时它完全绕过了 runit,但我确信 puma 脚本处于正常工作状态。
linux - 无法使用 Runit 运行 PhantomJS(节点:../deps/uv/src/unix/core.c:431: uv__close: Assertion `fd > -1' failed)
当我手动运行 PhantomJS 时,它可以正常工作。
但是当我用runit运行它时,我在日志中得到了这个错误:
这是中的 runit 脚本/etc/service/phantomjs/run
:
所有其他 runit 脚本都可以正常工作(例如:nginx、postgresql 等)
什么可能导致此错误?为什么 PhantomJS 在 runit 运行的脚本中表现不同?
logging - runit:无法在 debian 上锁定监督错误
我正在尝试设置 runit 并登录我的 debian wheezy VM。到目前为止,我已经设法通过以下设置启动 gunicorn 服务:
我的日志运行文件有:
当我运行sudo runsvdir /etc/service/gunicorn
不知道我做错了什么,任何指针?
r - 获取 R 文件而不运行它(单元测试)
我们正在构建一个 R 代码库,并希望对我们编写的任何函数进行单元测试。到目前为止,我们已经为 R 找到了两个测试库:RUnit 和 testthat。
在进行了一些沙盒测试之后,我们开发了一种可靠的方法来在每次运行时测试代码。例如:
很简单。但是,我们还希望能够在不运行定义它的脚本的情况下测试函数(例如在 makefile 中使用 unittest 标志)。为此,我们将在 test.R 中编写 unittests
并运行它而不运行 sample.R 的其余部分。但是,当上面的代码运行时,不仅函数,而且 sample.R 中的其余代码都会运行,在这个例子中输出“Running fun()...”。有什么方法可以仅从文件中 source() 获取用户定义的函数吗?
如果不是,您是否建议将函数放在一个单独的文件中(例如,functions.R),该文件可以通过在 test.R 中进行单元测试并在 sample.R 中运行时运行?那里的缺点似乎是所需的样板:一个用于流程的文件,一个用于功能的文件,一个用于运行测试的文件。
bundler - 独角兽使用旧版本可执行文件(rbenv + runit)
我遇到了一个应该很容易解决的问题,但我似乎找不到魔法。
Unicorn 正在使用 runit 并试图指向当前版本的 Gemfile。在每次部署结束时,都会向独角兽发送一个 USR2 信号,并使用“零停机部署”方法成功替换旧主机。这在一段时间内都很好,直到我达到清理旧版本的地步。就在那时,我意识到 runit 指向的是第一次创建独角兽主服务器时使用的发布目录。
我尝试将此块添加到 unicorn.rb:
我也试过用这个脚本包装捆绑器:
我什至尝试手动设置 BUNDLE_GEMFILE 环境变量,但这些似乎都不起作用。
当我在部署后查看独角兽标准输出时,我看到:
如您所见,该命令正在新版本目录 (d6a582935d84cc0bec2e760c14d804a7c5e2146c) 中运行,但 unicron 可执行文件指向旧版本 (1279f2e2d88c90ba4e02eaba611a4ee6de6fee77)。
如果我手动停止/启动独角兽,则使用正确的版本,但这意味着没有“零停机时间部署”。
我不确定问题是什么,但我认为这与 rbenv 路径有关。有人对如何让独角兽指向正确的(当前)版本有建议吗?
如果有人熟悉,我正在使用带有 Chef 的 application_ruby LWRP 进行部署。它基本上只是模仿 Capistrano。
相关配置:
独角兽.rb:
runit 独角兽脚本: