Содержание

Установка Docker и Docker-compose на Ubuntu 20.04

Все еще нет смысла рассказывать, что такое Docker раз вы читаете это. В этом посте я расскажу как быстро и просто установить Docker и Docker-compose на Ubuntu 20.04.

Установка Docker

В репозитории Ubuntu может быть не самая последняя версия Docker. По этому мы будем устанавливать его из официального репозитория Docker.

Сначала обновите существующий список пакетов:

1
sudo apt update

Затем установите несколько обязательных пакетов, которые позволяют apt использовать пакеты по HTTPS:

1
sudo apt install apt-transport-https ca-certificates curl software-properties-common

Добавляем ключ GPG официального репозитория Docker в вашу систему:

1
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -

Добавляем репозиторий Docker:

1
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu focal stable"

Обновляем список пакетов:

1
sudo apt update

Теперь надо убедится, что все нормально и установка будет из репозитория Docker, а не Ubuntu:

1
apt-cache policy docker-ce

На выходе видим плюс минус такую картину:

1
2
3
4
5
6
docker-ce:
  Installed: (none)
  Candidate: 5:19.03.9~3-0~ubuntu-focal
  Version table:
     5:19.03.9~3-0~ubuntu-focal 500
        500 https://download.docker.com/linux/ubuntu focal/stable amd64 Packages

Если все так, то прекрасно! Установится откуда надо и все будет хорошо.

Ну и финальный штрих, установим Docker:

1
sudo apt install docker-ce

Проверяем работает ли Docker

Для начала узнаел, что там с Docker’ом:

1
sudo systemctl status docker

На выходе:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
● docker.service - Docker Application Container Engine
     Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled)
     Active: active (running) since Tue 2020-05-19 17:00:41 UTC; 17s ago
TriggeredBy: ● docker.socket
       Docs: https://docs.docker.com
   Main PID: 24321 (dockerd)
      Tasks: 8
     Memory: 46.4M
     CGroup: /system.slice/docker.service
             └─24321 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock

Отлично! Все завелось и прекрасно работает. Давайте попробуем запустить какой нибудь контейнер:

1
sudo docker run hello-world

Если все хорошо, то на выходе увидим:

1
2
3
4
5
6
7
8
Unable to find image 'hello-world:latest' locally
latest: Pulling from library/hello-world
0e03bdcc26d7: Pull complete
Digest: sha256:6a65f928fb91fcfbc963f7aa6d57c8eeb426ad9a20c7ee045538ef34847f44f1
Status: Downloaded newer image for hello-world:latest

Hello from Docker!
This message shows that your installation appears to be working correctly.

Разрешаем не root пользователю запускать Docker

По умолчанию обычные пользователи не могут запускать докер без использования sudo, но все поправимо.

Лучше не стоит
Никогда так не делайте на продакшине! Это практически выдача рутовых прав пользователю

Добавляем своего пользователя в группу docker:

1
sudo usermod -aG docker username

Перелогиваемся и смело выполняем:

1
docker run hello-world

Устанавливаем Docker-compose

Запускаем эту команду для установки последней версии docker-compose, проверить какая версия является последней можно тут:

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

Делаем файл запускаемым:

1
sudo chmod +x /usr/local/bin/docker-compose

При желании можно настроить автодополнение команды для bash или zsh.

Проверяем, как все работает:

1
docker-compose --version

Увидим плюс минус:

1
docker-compose version 1.26.0, build 8a1c60f6

Собственно все. Удачи!

Чуть не забыл. Вы можете почитать меня в твиттере или телеграме, посмотреть мои фотографии в инстаграме, подружиться со мной в PSN, позлить меня на твиче пока я играю или посмотреть в записи. А самые лучшие человеки могут меня поддержать деньгой.