Убить контейнер докер - PullRequest
0 голосов
/ 25 июня 2018

Я установил Docker-контейнер для моего приложения узла и запустил его, используя

docker run -p 4500:4500 my_node_app

Он запустил pm2 в режиме no-daemon.CTRL + C и выход не работают.Я попытался Docker остановить my_node_app в другом окне терминала, но безрезультатно.Цени любую помощь.

Ответы [ 3 ]

0 голосов
/ 25 июня 2018

Вы сможете увидеть работающие в данный момент док-контейнеры, используя следующую команду.

docker ps

Затем скопируйте идентификатор CONTAINER запущенного контейнера и выполните следующую команду

docker stop <container_id>

Пожалуйста, замените на реальное значение.

0 голосов
/ 25 июня 2019

Вы можете попробовать это, довольно простой скрипт

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

Изолировать первое значение табуляции, которое является идентификатором контейнера

awk '{print $1}'

Результат

763e1a00808e

Таким образом, в заключение это изолирует и отправит команду kill или stop для идентификатора контейнера, соответствующего имени изображения

0 голосов
/ 25 июня 2018

Сделайте docker container ls, чтобы найти имя контейнера, если вы его еще не знаете, тогда docker kill container_name.

Источник: Докерская документация

...