Пост

Установка Docker и Docker Compose в CentOS 8

Docker Compose - это инструмент для определения и запуска многоконтейнерных приложений на основе Docker. Он позволяет описать конфигурацию и зависимости между контейнерами в виде файла YAML (YAML Ain’t Markup Language) и запустить их с помощью одной команды. Он обеспечивает упрощение управления сложными приложениями, состоящими из множества контейнеров, и позволяет разработчикам фокусироваться на написании кода, а не на настройке окружения.

При установке Docker и Docker Compose в CentOS 8 есть небольшие различия, по сравнению с CentOS 7

Установка Docker

Устанавливаем необходимые пакеты

1
$ sudo dnf -y install -y yum-utils device-mapper-persistent-data lvm2

Добавляем репозиторий Docker CE (Community Edition)

1
$ sudo dnf config-manager --add-repo=https://download.docker.com/linux/centos/docker-ce.repo

Проверяем

1
2
3
4
$ dnf list docker-ce
[...]
Available Packages
docker-ce.x86_64                3:19.03.12-3.el7                docker-ce-stable

Устанавливаем Docker CE

1
$ sudo dnf -y install docker-ce --nobest

Добавляем нашего пользователя, под которым настраиваем ОС, в группу docker

1
$ sudo usermod -aG docker $(whoami)

Применяем изменения к группам

1
$ newgrp docker

Добавляем сервис в автозагрузку и запускаем его

1
$ sudo systemctl enable --now docker

Проверяем

1
2
$ docker -v
Docker version 19.03.12, build 48a66213fe

Установка Docker Compose

Скачиваем Docker Compose в каталог /usr/local/bin/

1
$ sudo curl -L "https://github.com/docker/compose/releases/download/1.26.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose

Делаем файл исполняемым и создаем симлинк

1
2
$ sudo chmod +x /usr/local/bin/docker-compose
$ sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose

Проверяем

1
2
$ docker-compose -v
docker-compose version 1.26.2, build eefe0d31

Настраиваем Firewall

Для того, что бы контейнеры могли общаться с внешней сетью, используя IP-адрес хоста вместо собственных IP-адресов контейнеров, добавим правило add-masquerade в Firewall

1
2
$ sudo firewall-cmd --zone=public --add-masquerade --permanent
$ sudo firewall-cmd --reload
Авторский пост защищен лицензией CC BY 4.0 .

© IT Draft. Некоторые права защищены.