Методы остановки всех образов Docker: CLI, Docker Compose, Python SDK и API

Чтобы остановить все образы Docker, вы можете использовать различные методы в зависимости от ваших требований и инструментов, доступных в вашей среде. Вот несколько методов с соответствующими примерами кода:

  1. Docker CLI:

    docker stop $(docker ps -aq)

    Эта команда останавливает все запущенные контейнеры.

  2. Docker Compose:
    Если вы используете Docker Compose, перейдите в каталог, где находится ваш файл docker-compose.yml, и запустите:

    docker-compose down

    Эта команда останавливает и удаляет все контейнеры, сети и тома, созданные вашей конфигурацией Docker Compose.

  3. Docker Python SDK.
    Если вы предпочитаете использовать Docker Python SDK, вы можете останавливать контейнеры программным способом. Вот пример:

    import docker
    client = docker.from_env()
    for container in client.containers.list():
       container.stop()

    Этот код останавливает все запущенные контейнеры, использующие Docker Python SDK.

  4. Docker API.
    Если вы хотите напрямую взаимодействовать с Docker API, вы можете использовать клиентскую библиотеку HTTP, например requestsв Python. Вот пример:

    import requests
    response = requests.get('http://localhost/containers/json')
    containers = response.json()
    for container in containers:
       requests.post(f'http://localhost/containers/{container["Id"]}/stop')

    Этот код получает список запущенных контейнеров из Docker API и останавливает каждый из них по отдельности.