web-dev-qa-db-ja.com

Dockerコンテナーを強制終了する

ノードアプリ用のDockerコンテナーを設定し、それを使用して実行しました

docker run -p 4500:4500 my_node_app

デーモンなしモードでpm2を起動しました。 CTRL + Cと終了は機能しません。別のターミナルウィンドウでdocker stop my_node_appを試しましたが、役に立ちませんでした。どんな助けにも感謝します。

12
Coder_Nick

以下のコマンドを使用して、現在実行中のDockerコンテナーを確認できます。

docker ps

次に、実行中のコンテナのCONTAINER IDをコピーし、次のコマンドを実行します

docker stop <container_id>

実際の値に置き換えてください。

2
srimaln91

これはかなり簡単なスクリプトで試すことができます

docker container kill $(docker ps | grep "image_name" | awk '{print $1}')

説明しました

表構造でのコンテナのリスト

docker ps

結果

CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                 NAMES
763e1a00808e        7bb2586065cd        "docker-entrypoint.s…"   2 months ago        Up 2 weeks          3306/tcp, 33060/tcp   mysql_1
763e1a00999b        7bb2586065cd        "docker-entrypoint.s…"   1 months ago        Up 2 weeks          3307/tcp, 33061/tcp   mysql_2

コンテナを分離する

grep "mysql_1"

結果

763e1a00808e        7bb2586065cd        "docker-entrypoint.s…"   2 months ago        Up 2 weeks          3306/tcp, 33060/tcp   mysql_1

コンテナーIDである最初のタブ値を分離する

awk '{print $1}'

結果

763e1a00808e

つまり、これにより、イメージ名に一致するコンテナーIDを分離して、killコマンドまたはstopコマンドを送信します。

0

行う docker container lsコンテナ名がわからない場合は、その名前を検索します。次にdocker kill container_name

ソース: Dockerドキュメント

0
Hugo