Docker на CentOS 8: Быстрая установка и решение проблем с сетью

Docker на CentOS 8: Быстрая установка и решение проблем с сетью

Вы разрабатываете современные приложения? Тогда вы наверняка слышали о Docker. Эта технология контейнеризации изменила подход к развертыванию ПО. Представьте: вы настраиваете окружение один раз на своей машине, а затем ваше приложение работает везде — на любом сервере с Linux или Windows. Всё, что нужно, — это установленный Docker.

Больше никаких проблем с версиями библиотек или зависимостями. Ваше приложение запускается в изолированном контейнере со всем необходимым для работы. Вы можете запускать несколько таких контейнеров, и они будут общаться между собой по сети.

Но что делать, если ваш сервер работает на CentOS 8? Установка Docker здесь имеет свои нюансы. Из-за перехода дистрибутива на новую систему firewall, nftables, стандартная процедура может привести к тому, что сеть внутри контейнеров перестанет работать.

В этом материале мы не просто покажем, как установить Docker. Мы дадим вам готовое решение этой проблемы с сетью. Вы узнаете, как добавить официальный репозиторий Docker для получения самой свежей версии. Мы разберем установку не только самого Docker CE, но и мощного инструмента Docker Compose, который позволяет управлять многоконтейнерными приложениями одной командой.

Вы проверите работоспособность системы, запустив тестовый контейнер, и будете точно знать, что всё настроено правильно. Готовы раз и навсегда разобраться с Docker на CentOS 8? Тогда переходите к полной статье — ваш сервер ждет!


Docker - это система для управления контейнерами, которая стала очень популярна в последнее время. Основное преимущество Docker для разработчика в том, что ему достаточно один раз настроить необходимые контейнеры на своей машине, а потом он сможет переносить свою программу на любой сервер будь то Linux или Windows и там будет всё работать, надо только чтобы был установлен Docker.

Приложение запускается в LXC контейнере в котором установлен дистрибутив Linux и набор программ необходимых для выполнения приложения. Таких контейнеров может быть несколько и они могут взаимодействовать между собой по сети. В этой статье мы разберемся как установить Docker в CentOS 8. Процедура практически такая же как и в CentOS 7, но из-за перехода дистрибутива на nftables есть некоторые отличия.


Содержание статьи

Установка Docker в CeontOS 8

Чтобы получить самую свежую версию программы необходимо сначала добавить официальный репозиторий Docker в систему:

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

Docker на CentOS 8: Быстрая установка и решение проблем с сетью

 

Затем установка Docker CentOS 8 выполняется командой:

dnf install docker-ce

Данные команды будут актуальны как для Fedora и CentOS 7 только для последней будет необходимо поменять пакетный менеджер на yum и репозиторий будет добавляться по другому.

Далее запустите службу Docker и добавьте её в автозагрузку:

systemctl start docker
systemctl enable docker
systemctl status docker

Docker на CentOS 8: Быстрая установка и решение проблем с сетью

Поскольку CentOS 8 перешла на новую подсистему брандмауэра - nftables, а Docker поддерживает только iptables, то сеть внутри контейнеров работать не будет. Чтобы это исправить надо включить трафик masquerade с помощью firewalld:

firewall-cmd --zone=public --add-masquerade --permanent

Затем перезагрузите фаервол, чтобы правила активные обновились:

firewall-cmd --reload

Установка Docker Compose

Docker обычно устанавливается вместе с инструментом автоматического развертывания и конфигурирования контейнеров docker-compose. Это как раз та утилита, которая поможет поднять ваш проект на другой машине одной командой. Для её установки выполните:

wget "https://github.com/docker/compose/releases/download/1.25.0/docker-compose-$(uname -s)-$(uname -m)"
mv ./docker-compose /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose

Готово, установка docker compose CentOS 8 завершена и вы можете начать работать с этой утилитой.

Проверка работы Docker

Чтобы убедиться что Docker установлен и работает можно посмотреть его версию:

docker --version

Docker на CentOS 8: Быстрая установка и решение проблем с сетью

А также можно запустить Hello world контейнер:

docker run hello-world

Docker на CentOS 8: Быстрая установка и решение проблем с сетью

Также можем посмотреть версию docker-compose:

docker-compose --version

Docker на CentOS 8: Быстрая установка и решение проблем с сетью

Удаление Docker в CentOS

Удалить Docker CentOS можно просто удалив пакет, который вы ранее установили, для этого выполните:

dnf remove docker-ce

Docker на CentOS 8: Быстрая установка и решение проблем с сетью

Чтобы удалить docker-compose достаточно удалить файл /usr/local/bin/docker-compose, эта утилита находится только там и её нет больше нигде в системе.

Выводы

В этой статье мы разобрали как установить docker CentOS 8 и решить проблему с сетью в контейнерах. Напишите в комментариях хотите ли вы продолжение этой темы в статьях о том, как пользоваться Docker и Docker compose для разворачивания своих приложений.

Оставить комментарий


Кликните на изображение чтобы обновить код, если он неразборчив