ドッカーのウェブサイトの公式ガイドから簡単な例があります。コンテナ内のプロセスを殺すには?ドッカーのトップコマンド
私は次のコマンドを実行します。
sudo docker run -d ubuntu:latest /bin/sh -c "while true; do echo hello world; sleep 1; done"
a66asdasdhqie123...
そして、作成したコンテナからいくつかの出力を取る:
sudo docker top a66
UID PID PPID C STIME TTY TIME CMD
root 25055 15152 0 20:07 ? 00:00:00 /bin/sh -c while true; do echo hello world; sleep 1; done
root 25295 25055 0 20:10 ? 00:00:00 sleep 1
次I:
sudo docker logs a66
hello
hello
hello
...
その後、私は、コンテナの実行中のプロセスを検索コンテナの最初のプロセスを殺すようにしてください:
sudo docker exec a66 kill -9 25055
しかし、私はそれを何も変えません。プロセスはまだ動作し、毎秒 "こんにちは"を出力します。何が悪いですか?この
であり、通常は 'docker kill'でプロセスを終了させるでしょう。 –
コンテナ内のIDとIDの違いはなぜですか?つまり、上位のコマンドはホストマシンでPIDSを表示しますか? (申し訳ありませんが、私は今、携帯電話に出ている答えを確認できません) –
はい、 'docker top'は明らかにホストのPIDを示しています。 –