УВІЙТИ
    opened image

    Docker-compose є потужним інструментом для створення та керування Docker-контейнерами. Цей інструмент дозволяє створювати, запускати та керувати багатьма контейнерами, взаємодіючи один з одним. У цій статті ми розглянемо кілька команд, які можуть бути корисними при роботі з Docker-compose.

    Отже, приступимо.
     

    1. Команди для керування контейнерами:
    • docker-compose up: для запуску всіх контейнерів, визначених у файлі docker-compose.yml. 

           Наприклад, команда "docker-compose up" запустить всі контейнери з файлу docker-compose.yml у поточній директорії.

    • docker-compose down: для зупинки та видалення всіх контейнерів, визначених у файлі docker-compose.yml. 

           Наприклад, команда "docker-compose down" зупинить та видалить всі контейнери, які були запущені за допомогою файлу docker-compose.yml.
     

    1. Команди для керування службами:
    • docker-compose ps: для відображення списку запущених контейнерів та їх статусів. 

           Наприклад, команда "docker-compose ps" покаже всі запущені контейнери з файлу docker-compose.yml.

    • docker-compose up -d [SERVICE]: для запуску конкретної служби з файлу docker-compose.yml. 

            Наприклад, команда "docker-compose up nextcloud" запустить лише контейнер nextcloud з файлу docker-compose.yml, який був зупинений.

    1. Команди для керування образами:
    • docker-compose pull: для завантаження всіх образів, визначених у файлі docker-compose.yml. Наприклад, команда "docker-compose pull" завантажить всі образи, вказані у файлі docker-compose.yml.
    • docker-compose build: для збірки образів, визначених у файлі docker-compose.yml. Наприклад, команда "docker-compose build" зібере всі образи, вказані у файлі docker-compose.yml.
    1. Команди для керування журналами:
    • docker-compose logs: для перегляду журналів всіх контейнерів, визначених у файлі docker-compose.yml. Наприклад, команда "docker-compose logs" виведе журнали всіх контейнерів з файлу docker-compose.yml.

    • docker-compose logs [SERVICE]: для перегляду журналів конкретної служби з файлу docker-compose.yml. Наприклад, команда "docker-compose logs nextcloud_db" виведе журнали лише контейнера бази даних з файлу docker-compose.yml.

    1. Команди для керування контейнерами у роботі:
    • docker-compose stop: для зупинки всіх контейнерів, визначених у файлі docker-compose.yml, але без їх видалення. Наприклад, команда "docker-compose stop" зупинить всі контейнери з файлу docker-compose.yml.

    • docker-compose start: для запуску всіх зупинених контейнерів, визначених у файлі docker-compose.yml. Наприклад, команда "docker-compose start" запустить всі зупинені контейнери з файлу docker-compose.yml.


     

     

    • docker-compose up --force-recreate змушує Docker Compose перестворити контейнери, навіть якщо їх конфігурація або образ не змінився. Це означає, що Compose зупинить та видалить існуючі контейнери для вказаних у файлі docker-compose.yml сервісів, а потім створить нові контейнери з нуля, використовуючи останню версію образів, визначених у файлі. Використання опції --force-recreate корисно в ситуаціях, коли ви внесли зміни до файлу docker-compose.yml, які стосуються конфігурації контейнера, наприклад, змінні середовища або відображення портів.

     

     

     

    1. Команди для керування мережами:

     

    • docker-compose network ls: для відображення списку мереж, визначених у файлі docker-compose.yml, якщо вони є. Також можна скористатися командою docker network ls.

    • docker-compose network create [NETWORK]: для створення нової мережі у файлі docker-compose.yml. Наприклад, команда "docker-compose network create frontend" створить нову мережу з назвою frontend у файлі docker-compose.yml.
    • docker-compose network rm [NETWORK]: для видалення мережі, визначеної у файлі docker-compose.yml. Наприклад, команда "docker-compose network rm frontend" видалить мережу з назвою frontend з файлу docker-compose.yml.
    1. Команди для керування змінними середовища:
    • docker-compose config: для перевірки коректності файлу docker-compose.yml та відображення всіх змінних середовища, визначених у ньому. Наприклад, команда "docker-compose config" перевірить коректність файлу docker-compose.yml та покаже всі змінні середовища, визначені у ньому.

     

    • docker-compose exec [SERVICE] [COMMAND]: для виконання команди всередині контейнера, визначеного у файлі docker-compose.yml. Наприклад, команда "docker-compose exec nextcloud ls" виконає команду "ls" всередині контейнера nextcloud, який визначений у файлі docker-compose.yml.

     

    1. Команди для керування обсягами:
    • docker-compose volume ls: для відображення списку всіх обсягів, визначених у файлі docker-compose.yml. Наприклад, команда "docker-compose volume ls" або "docker volume ls" покаже всі обсяги, які визначені у файлі docker-compose.yml.

     

    • docker-compose volume create [VOLUME]: для створення нового обсягу, визначеного у файлі docker-compose.yml. Наприклад, команда "docker-compose volume create db_data" створить новий обсяг з назвою db_data у файлі docker-compose.yml.
    • docker-compose volume rm [VOLUME]: для видалення обсягу, визначеного у файлі docker-compose.yml. Наприклад, команда "docker-compose volume rm db_data" видалить обсяг з назвою db_data з файлу docker-compose.yml.


    У цій статті ми розглянули основні команди для роботи з Docker Compose, такі як запуск та зупинка контейнерів, створення мереж та обсягів, а також керування обсягами. Ознайомлення з цими командами допоможе більш ефективно використовувати Docker Compose при розробці та розгортанні додатків у контейнерах.