を使用せずにドッキングウィンドウの群れサービスなどのオープン自己ホスト型servicestackサービスをしてください:は、私は次の形式を持っているservicestackを使用してC#で書かれたコンソールアプリケーションを持っているコンソールのreadlineやreadkey
static void Main(string[] args)
{
//Some service setup code here
Console.ReadKey();
}
たときに実行このコードは正常に動作しますコンソールとしてのWindows上で。このプロジェクトはほぼ正確にhttps://github.com/ServiceStack/ServiceStack/wiki/Self-hostingです。これはテストプロジェクトなので
私はこのプロジェクトをlinux上でモノを使ってコンパイルし、ドッカーファイルを作成します。
私はそれがインタラクティブ
docker run -it --name bob -p 1337:1337 <myservice>
であれば、私は-itスイッチを省略した場合、コンテナは、コンテナが終了、しかし、フォアグラウンド
で実行されます。この画像に基づいて、コンテナを実行している問題がありませんストレート - STDINストリームがないので、Console.ReadKey()は機能しません。
私は、群れの中でホストされているサービスを取得しようとしているので、分離されたという概念はありません。私はコンソールサービスを生かし続けるために私のメインメソッド内でループをスピンアップすることができますが、これは私にはハッキーなようです...
私のコンテナを実行したい状況で私のサービスを生かし続ける良い方法がありますかdetatched
この回答はうまくいっているようですか? http://stackoverflow.com/a/34099238/1318694 – Matt
Wait.Set()はSIGINTとSIGTERMで実行する必要がありますが、C#/ monoでは動作します。 – Matt
ええと...私はそれを試してみましょう... – Jay