В данной статье рассмотрим как установить Docker и Docker Compose в Linux Ubuntu 20.04. 

Установка Docker в Linux Ubuntu

Для начала перейдем на официальный сайт докера:     

https://www.docker.com/

Выберем раздел Developers -> Docs и здесь выберем Download and install -> Docker for Linux.  Если в Mac OS и Windows существует официальное Desktop приложение Docker Desktop, то в Linux на момент записи видео она находится в разработке. Об этом нам указывает текст в этом жёлтом информационном поле:

Docker Desktop Linux

Далее пролистываем вниз. В пункте Server указываем дистрибутив Linux моем случае это Ubuntu.

Установить докер можно двумя способами:

  1. первый способ это установка с использованием репозитория
  2. второй способ это установка из пакета

Воспользуемся первым способом. Первой командой обновим индекс пакетов:

 sudo apt-get update

Введем пароль администратора. Далее устанавливаем необходимые пакеты:

sudo apt-get install \
        ca-certificates \
        curl \
        gnupg \
        lsb-release

Соглашаемся на установку.

Устанавливаем официальный gpg-ключ:

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg

И добавляем стабильный репозиторий:

echo \
      "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu \
      $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

Теперь перейдем к установке Docker. Снова обновляем индекс пакетов:

sudo apt-get update

И следующей командой устанавливаем Docker:

sudo apt-get install docker-ce docker-ce-cli containerd.io

Далее для того что проверить корректность установки Docker запустим Hello World образ следующей командой:

sudo docker run hello-world

Наш образ скачался и вывел приветственное сообщение. Это означает что Docker установлен успешно:

sudo docker run hello world

Но запускать образы можно только от имени администратора. Если мы попробуем запустить образ без имени администратора, то получим ошибку прав:

sudo docker run hello world permission denied

Для того, чтобы это справить произведем следующие действия:

1. Перейдем в раздел Linux postinstall

2. Добавим группу Docker:

sudo groupadd docker

Данная группа уже создалась во время установки.

3. Добавим нашего пользователя в группу docker:

sudo usermod -aG docker $USER

И теперь нужно перезайти в систему. Для этого выберем Выключить -> Завершить сеанс.

Авторизуемся и снова попробуем выполнить нашу команду:

docker run hello-world

И как мы видим наша ошибка не ушла. Для того, чтобы избавиться от ошибки необходимо перезагрузить систему:

reboot

Снова попробуем выполнить нашу команду:

docker run hello-world

И мы увидим наше приветствие:

docker run hello world

Установка Docker Compose в Linux Ubuntu

Теперь установим Docker Compose.

Для этого слева в меню выберем Docker Compose -> Install Compose для установки первой версии. 

Мы же будем устанавливать вторую версию Docker Compose. Для этого перейдем в раздел Install Compose 2.0.0 on Linux 

Далее следующей командой создадим в домашней папке директорию для плагинов:

mkdir -p ~/.docker/cli-plugins

И скачаем Docker Compose в эту папку следующей командой:

curl -SL https://github.com/docker/compose/releases/download/v2.2.3/docker-compose-linux-x86_64 -o $DOCKER_CONFIG/cli-plugins/docker-compose

Для того чтобы установить Docker Compose для всех пользователей, необходимо создавать папку с плагином по пути /usr/local/lib/docker/cli-plugins и скачивать Docker Compose уже в эту директорию.

Далее следующей командой применим права на выполнение:

chmod +x ~/.docker/cli-plugins/docker-compose

И проверим установку выводом версии Docker Compose:

docker compose version

Команда вывела что у нас версия 2.2.3, а значит докер Docker Compose установился успешно:

docker compose version