Я хочу прагматично остановить и удалить контейнер докера, если он запущен. Это для сценария сборки.
Возьмем следующий пример. Как мне остановить и удалить докер-контейнер rabbitmq, как показано в столбце NAMES в сценарии bash?
docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
9909a5e2856f rabbitmq-image "/docker-entrypoint.s" 11 minutes ago Up 11 minutes 0.0.0.0:5672->5672/tcp, rabbitmq
8990dd1fe503 redis-image "/entrypoint.sh redis" 6 weeks ago Up 4 days 0.0.0.0:32770->6379/tcp redis
etc
Следующая команда удалит контейнер и сделает то, что я хочу сделать.
docker stop rabbitmq && docker rm -f rabbitmq
Однако он объединяет это в сценарий, который я хотел бы знать? Думаю, это будет выглядеть примерно так.
#!/bin/bash
if [ /*docker ps check some value */ ]; then
docker stop rabbitmq && docker rm -f rabbitmq
fi