Как установить и использовать Docker Compose в Debian 10 Linux

Установка и использование Docker Compose в Debian 10

Docker — это платформа контейнеризации, которая позволяет быстро создавать, тестировать и развертывать приложения в виде портативных, самодостаточных контейнеров, которые могут работать практически где угодно.

Docker Compose — это инструмент, позволяющий определять и координировать многоконтейнерные Docker-приложения. Он использует YAML-файл для настройки контейнеров, сетей и томов приложения.

Compose можно использовать для различных целей. Наиболее популярные варианты использования Docker Compose — развёртывание приложений на одном хосте, автоматическое тестирование и локальная разработка.

В этом руководстве объясняется, как установить последнюю версию Docker Compose в Debian 10, Buster. Мы также рассмотрим основные концепции и команды Docker Compose.

Предпосылки

Прежде чем продолжить, убедитесь, что выполнены следующие предварительные условия:

Установка Docker Compose на Debian 10

Установочный пакет Docker Compose доступен в официальных репозиториях Debian 10, но его версия может быть не всегда последней. Рекомендуется устанавливать Docker Compose из репозитория Docker на GitHub.

На момент написания этой статьи последней стабильной версией Docker Compose была версия 1.23.1 . Перед загрузкой исполняемого файла Compose посетите страницу релиза репозитория Compose на GitHub и проверьте, доступна ли новая версия для загрузки.

Для установки последней версии Docker Compose в Debian 10 выполните следующие действия:

  1. Загрузите двоичный файл Docker Compose в каталог /usr/local/bin с помощью wget или curl :

     sudo curl -L "https://github.com/docker/compose/releases/download/1.23.1/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
  2. Используйте chmod , чтобы сделать исполняемый файл Compose:

     sudo chmod +x /usr/local/bin/docker-compose
  3. Для проверки установки используйте следующую команду, которая выведет версию Compose:

     docker-compose --version

    Вывод будет выглядеть примерно так:

     docker-compose version 1.23.1, build b02f1306

Начало работы с Docker Compose

В этом разделе мы покажем, как настроить локальную среду разработки WordPress с помощью Docker Compose.

Создайте каталог для проекта и перейдите в него :

 mkdir wordpress_app && cd wordpress_app

Откройте текстовый редактор и создайте файл с именем docker-compose.yml :

 nano docker-compose.yml

Вставьте следующее содержимое:

docker-compose.yml

 version : '3.7'  services :   db :     image : mysql:8.0     command : -- default-authentication-plugin=mysql_native_password     restart : always     volumes :       - db_data:/var/lib/mysql     environment :       MYSQL_ROOT_PASSWORD : password       MYSQL_DATABASE : wordpress    wordpress :     image : wordpress     restart : always     volumes :       - ./wp_data:/var/www/html     ports :       - "8080:80"     environment :       WORDPRESS_DB_HOST : db:3306       WORDPRESS_DB_NAME : wordpress       WORDPRESS_DB_USER : root       WORDPRESS_DB_PASSWORD : password     depends_on :        - db  volumes :     db_data :     wp_data : 

Давайте объясним код построчно.

Первая строка указывает версию файла Compose . Существует несколько различных версий формата файла Compose, поддерживающих определённые версии Docker.

Далее мы определяем две службы: db и wordpress . Каждая служба создаёт отдельный контейнер при запуске Docker Compose.

Служба db :

  • В качестве образа выбран образ mysql:8.0 . Если образ отсутствует, Compose загрузит его из публичного репозитория Docker Hub. Строка, начинающаяся с command переопределяет команду по умолчанию.
  • Политика « restart: always предписывает Compose перезапустить контейнер в случае его сбоя.
  • Контейнер будет использовать именованный том db_data для сохранения базы данных.
  • Определяет переменные среды для образа mysql:8.0 .

Сервис wordpress :

  • Использует изображение wordpress .
  • Монтирует каталог wp_data на хосте в /var/lib/mysql внутри контейнера.
  • Перенаправляет открытый порт 80 на контейнере на порт 8080 на хост-машине.
  • Определяет переменные среды для изображения wordpress .
  • Инструкция depends_on определяет зависимость между двумя службами. В этом примере db будет запущена до wordpress .

Из каталога проекта запустите стек WordPress, выполнив следующую команду:

 docker-compose up

Вывод должен выглядеть примерно так:

 ... ] /usr/sbin/mysqld: ready for connections. Version: '8.0.18' socket: '/var/run/mysqld/mysqld.sock' port: 3306 MySQL Community Server - GPL. db_1_99946702ac7e | 2019-12-15T21:37:29.109255Z 0 [System] [MY-011323] [Server] X Plugin ready for connections. Socket: '/var/run/mysqld/mysqlx.sock' bind-address: '::' port: 33060 ...

Docker Compose извлечет изображения, запустит контейнеры и создаст каталог wp_data в каталоге вашего проекта.

Введите http://0.0.0.0:8080/ в своем браузере, и вы увидите стандартный экран установки WordPress.

На этом этапе приложение WordPress готово к работе, и вы можете приступить к работе над ним.

Чтобы остановить создание сообщения, нажмите CTRL+C .

Вы также можете запустить Compose в отсоединенном режиме, используя опцию -d :

 docker-compose up -d

Для просмотра запущенных Docker-контейнеров используйте следующую команду:

 docker-compose ps
 Name Command State Ports ------------------------------------------------------------------------------------------------------ wordpress_app_db_1_99946702ac7e docker-entrypoint.sh --def ... Up 3306/tcp, 33060/tcp wordpress_app_wordpress_1_a428d8408817 docker-entrypoint.sh apach ... Up 0.0.0.0:8080->80/tcp

Чтобы остановить службы, когда Compose работает в отсоединенном режиме, используйте:

 docker-compose stop

Если вы хотите полностью удалить контейнеры, используйте опцию down :

 docker-compose down

Передача ключа --volumes также удаляет тома данных:

 docker-compose down --volumes

Удаление Docker Compose

Если вам необходимо удалить Docker Compose, вы можете просто удалить двоичный файл, введя:

 sudo rm /usr/local/bin/docker-compose

Заключение

Чтобы установить Docker Compose на Debian 10, просто загрузите двоичный файл в каталог по системному пути и сделайте его исполняемым.

Если у вас есть вопросы, пожалуйста, оставьте комментарий ниже.

docker debian Не используете Debian 10?
Выберите другую ОС:
центос 7 дебиан 10 убунту 18.04 убунту 20.04

Связанные руководства

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *