如何开始只针对一个应用程序进行精简?
在 /etc/thin/ 中我有几个 yml 文件。当我运行 service Thin stop -C /etc/thin/app.yml
Thin 时,会停止所有应用程序,而不是仅停止我指定的应用程序。
如何才能仅停止/启动指定的应用程序?
更新:嗯,在 /etc/init.d/thin
中有这样的内容:$DAEMON restart --all $CONFIG_PATH
。这解释了很多。有更智能的 init.d 脚本吗?这是我的脚本:
https://gist.github.com/1003131
另请参阅:
In /etc/thin/ I've got several yml files. When I run service thin stop -C /etc/thin/app.yml
thin stops all applications, instead of only the one I specified.
How do I get thin to stop/start only the specified application?
UPDATE: Hmm, in /etc/init.d/thin
there's this: $DAEMON restart --all $CONFIG_PATH
. That explains a lot. Are there smarter init.d scripts? This is my script:
https://gist.github.com/1003131
See also:
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
您必须编辑 /etc/init.d/thin 添加新操作或修改“重新启动”操作。
如您所见,--all $CONFIG_PATH 将命令发送到所有瘦实例。
将初始化脚本粘贴到某处,我们可以找到一个不错的解决方案;)
更新:
尝试添加以下行,下面:
我没有尝试过,但它应该可以正常工作。这是一个非常简单的解决方案(没有错误检查),我们添加了 2 个必须调用的新操作:
让我知道它是否有效;)
干杯,
一个。
you have to edit /etc/init.d/thin adding a new action or modifying the "restart" action.
as you can see, --all $CONFIG_PATH sends the command to all thin instances.
paste the init script somewhere, we can find a decent solution ;)
UPDATE:
try to add the following lines, below this:
I didn't tried it, but it should work well. this is a really simple solution (no error checking), we've added 2 new actions that must be called as:
let me know if it works ;)
cheers,
A.
我提出了另一个解决方案(我认为更精简方便):
设置
/etc/init.d/thin
文件的内容以使用我的修复:<前><代码>#!/bin/sh
### 开始初始化信息
# 提供:薄
# 必需启动:$local_fs $remote_fs
# 必需停止:$local_fs $remote_fs
# 默认开始:2 3 4 5
# 默认停止:S 0 1 6
# 简短描述:精简初始化脚本
# 描述:薄
### 结束初始化信息
# 原作者:福雷斯特·罗伯逊
# 不要“设置-e”
DAEMON=/usr/local/bin/thin
SCRIPT_NAME=/etc/init.d/thin
CONFIG_PATH=/etc/thin
# 如果包没有安装则退出
[ -x "$DAEMON" ] ||出口0
if [ "X$2" = X ] || [“X$3”=X];然后
INSTANCES="--全部 $CONFIG_PATH"
别的
实例=“-C $3”
菲
案例“$1”
开始)
$DAEMON 启动 $INSTANCES
;;
停止)
$DAEMON 停止 $INSTANCES
;;
重新启动)
$DAEMON 重新启动 $INSTANCES
;;
*)
echo "用法: $SCRIPT_NAME {start|stop|restart} (-C config_file.yml)" >&2
3号出口
;;
埃萨克
:
使用
thin restart -C /etc/thin/ my_website.yml
。可以将此类语法与start
、restart
和stop
命令一起使用。然而,thin restart
(或者start
或stop
,当然)会导致所有注册的实例。I propose another solution (which i think is more thin-convenient):
set the content of your
/etc/init.d/thin
file to use my fixes:Use
thin restart -C /etc/thin/my_website.yml
. It is possible to use such syntax withstart
,restart
andstop
commands. Yet,thin restart
(orstart
orstop
, of course) would inflict all the instances registered.这很奇怪,我从 gem 本身为下一个构建的 init 脚本添加了一个补丁,以允许在将来的安装中重新启动
(重新启动文件)
$DAEMON 重新启动 -C $2
;;
但宝石所有者拒绝合并并说你可以使用瘦启动 - C /path/ 这很奇怪,因为我已经尝试了很多并且脚本本身说 --all 并且不允许单个配置,
我也尝试按照他说的做,显然它重新启动了所有,因为脚本使用了所有,任何人都可以对此提供更多说明 https://github.com/macournoyer/thin/pull/176
This is weird, I added a patch to the script from the gem itself for the init script for the next build to allow a single restart on future installations
restart-file)
$DAEMON restart -C $2
;;
but the gem owner refused the merge and said you can use thin start - C /path/ which is weird, because I've tried it a lot and the script itself says --all and no single config is allowed,
I've also tried doing what he said and obviously it restarted all since the script uses all, can anyone shed more light to this https://github.com/macournoyer/thin/pull/176