Docker がコンテナを閉じずにコンテナを終了するための 2 つの方法: 1. 「Ctrl P Q」ボタンを押してコンテナを終了すると、コンテナを閉じずに通常どおり終了できます; 2. 終了後、 「docker restart」コマンドを使用してコンテナを再起動します。attach コマンドでコンテナに入った後、httpd と radosgw を再起動し、wget を使用して radosgw が正常に再起動されるかどうかを確認します。
このチュートリアルの動作環境: linux7.3 システム、docker バージョン 19.03、Dell G3 コンピューター。
方法 1: コンテナを閉じずに通常どおり終了したい場合は、Ctrl P Q を押してコンテナを終了してください
次の例では、コンテナを閉じずに終了します。
##方法 2: exit を使用して終了する場合、コンテナは終了後に閉じられます。次のプロセスを使用して回復できます。#docker restart コマンドを使用してコンテナーを再起動します。
実際には、コンテナーの起動時にこれを構成し、 -d パラメーターを追加してコンテナーを起動できます。コマンドは新しいコンテナの起動のみに制限されており、閉じたコンテナを起動することはできません。
docker run -d: バックグラウンドでコンテナを実行し、コンテナ ID を返します次の例では、docker -d を使用してコンテナを開始し、終了します
ここでは、-d コマンドを使用して終了した後もコンテナがまだ停止していることがわかります。実践的な友人なら、docker run -d を使用してコンテナを起動しただけでも停止していることがわかるかもしれません。
ここ 実際、理解する必要があるのは、コンテナの実行メカニズムです。Docker コンテナはバックグラウンドで実行され、フォアグラウンド プロセスが必要です。ここでは、コンテナにフォアグラウンド プログラムを実行させます。 -d 起動後も存続可能私は nohup を使用して、Baidu に 1000 秒ごとに ping を送信するプロセスをバックグラウンドで実行します。さらに、「while true; do」も使用できます。 echo hello world; sleep 1; done」を実行すると、hello world が無限に出力されます。
また、バックグラウンドで実行中のプロセスがある場合でも、コンテナに入って exit を入力して終了すると、コンテナの実行は終了しますのでご注意ください。 推奨される学習: 「docker ビデオ チュートリアル
」以上がコンテナを閉じずにDockerコンテナを終了する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。