Чтобы удалить все вышедшие контейнеры в Docker, вы можете использовать различные методы. Вот несколько примеров кода:
Метод 1. Использование интерфейса командной строки Docker
docker rm $(docker ps -aqf "status=exited")
Эта команда использует команду docker psс флагом -aqfдля фильтрации контейнеров по статусу (status=exited). Отфильтрованные идентификаторы контейнеров затем передаются команде docker rmдля их удаления.
Метод 2. Использование Docker Compose
Если вы используете Docker Compose для управления контейнерами, вы можете использовать следующую команду:
docker-compose rm -f
Флаг -fиспользуется для принудительного удаления контейнеров.
Метод 3. Использование Docker API с Python
Если вы предпочитаете использовать Docker API с Python, вы можете использовать библиотеку dockerдля достижения того же результата:
import docker
client = docker.from_env()
containers = client.containers.list(filters={"status": "exited"})
for container in containers:
container.remove()
Этот фрагмент кода использует библиотеку dockerдля подключения к демону Docker, перечисляет все контейнеры со статусом «выход» с помощью параметра filters, а затем выполняет итерацию по контейнеры, чтобы удалить их.