2

monit と組み合わせて使用​​される新興構成を構築しようとしています。

いくつかの引数を vertx (頂点の複数のインスタンス) にも渡したいのですが、既にシェルで適切なステートメントを取得できていないため、upstart スクリプトを引用する必要はないと思います。

start-stop-daemon --start --chdir /my/app/dir --exec /usr/bin/vertx runzip myverticle-mod.zip -instances 20

「-instances 20」引数を exec ステートメントに渡す方法がわかりません。どういうわけか、常に start-stop-daemon のオプションとして解釈されます

start-stop-daemon: invalid option -- 'i'

--exec ステートメント全体を中かっこに入れてみました...

4

1 に答える 1

1

たぶん、Unix の基本で何かを見逃していて、 --exec 文字列を適切にエスケープできなかったので、私の実用的なアプローチ/回避策は、カスタムのパラメーター化された開始スクリプトを作成することでした:

#!/bin/sh
export JAVA_OPTS="-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=$1 -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false -Djava.rmi.server.hostname=192.168.0.100"
/usr/bin/vertx runzip $2 -instances $3

Upstart config (ポート 33002 で JMX RMI を介して verticle の 10 インスタンスを実行)

script
    VERTX_OPTS=" 33002 mymodule-mod.zip 10"
    exec start-stop-daemon --start --exec /usr/bin/myVertxStartup --$VERTX_OPTS
end script
于 2014-10-21T14:51:22.710 に答える