最近、Docker がコンテナの起動時に特定のプロセスを直接実行できるようにする方法を調べていたところ、コンテナの起動時に Dockerfile でコンテナ実行コマンドを指定できることが分かりました。 CMD を指定しますが、各 Dockerfile には 1 つの CMD 命令しか含めることができません。複数の CMD 命令を指定した場合、最後の命令のみが実行されます。 そこで方法を考えて、スクリプトを書いて、スクリプト内で複数のプロセスを開始し、Dockerfile でスクリプトを実行しました。 最終的に、この方法は実行可能であることが証明されました。しかし、実験中に問題が発生しました。コンテナは起動後すぐに停止しました。 情報を参照した後: Docker コンテナは、一度に 1 つのプロセスのみを管理できます。このプロセスが終了すると、コンテナも終了します。ただし、これはコンテナが 1 つのプロセスのみを実行できるという意味ではありません (他のプロセスはバックグラウンドで実行できます)。ただし、コンテナが終了しないようにするには、フォアグラウンドでプロセスが実行されている必要があります。 解決: スクリプト内の最後のプロセスはフォアグラウンド モードで実行する必要があります。つまり、プロセスの最後に & (& はバックグラウンド実行を意味します) を追加しないでください。そうしないと、コンテナーが終了します。 補足知識: docker コンテナで gdbserver を使用する際の問題と解決策 dockerコンテナでgdbserverを使用するときに問題が発生します
その理由は、Docker はデフォルトで PTRACE 機能を無効にしており、コンテナの実行時に有効にする必要があるためです。
起動後すぐにdockerコンテナが終了する問題を解決する上記の記事は、編集者が皆さんと共有する内容のすべてです。 皆さんの参考になれば幸いです。また、123WORDPRESS.COMを応援していただければ幸いです。 以下もご興味があるかもしれません:
|
<<: MySQL フラッシュリストとダーティページフラッシュメカニズム
>>: JavaScript のドキュメント オブジェクト モデル (DOM)
HTML フォーム タグのチュートリアル。このセクションでは、主に Web ページで INPUT タ...
1. MyISAM ストレージエンジン欠点:トランザクションはサポートされていません最小粒度ロック:...
.net 開発に関しては、Microsoft の SQL Server データベースに精通しており、...
問題が発生しました。情報の編集をテストする際、編集した内容に一重引用符 (') が含まれてい...
輸入:プロジェクトの要件により、同じコードの一部をコンポーネントにカプセル化し、必要な場所にインポー...
2.1 セマンティクス化により、Webページが検索エンジンに理解されやすくなりますこの章では、We...
1. 仮想マシンとgit bashウィンドウを開き、接続の準備をします2. 仮想マシンでifconf...
目次序文1. リクエストをキャンセルする方法2. 重複リクエストの判定方法3. 繰り返しリクエストを...
MySQL 複数の無関係なテーブルクエリデータとページング機能要件主キーと外部キーの関連付けがない ...
まず、変更イベントは 1 つだけです。 changelevel() //値を選択選択を変更して行の値...
序文この記事は主にMySQLコマンド階層検索ヘルプの使用に関する内容を紹介します。この記事のサンプル...
具体的な方法は以下の通りです。 CSSコードコードをコピーコードは次のとおりです。 .wap_bot...
前回のエピソードレビュー:昨日は、ページがさまざまなデバイス サイズにどのように対応するかについて説...
01. コマンドの概要Linux には充実したヘルプ マニュアルが用意されています。コマンドのパラメ...
コードをコピーコードは次のとおりです。 IE6 と FF の違い: background:orang...