Як встановити Docker в Ubuntu 20.04

Як встановити Docker в Ubuntu 20.04

OS: Ubuntu 20.04

У принципі, нічого екстраординарного в установці docker немає, і процес повністю описаний в офіційній документації. Тим не менш, розглянемо кожен крок.

Видалення старих версій

Старі версії Docker називалися docker, docker.io чи docker-engine. Якщо вони встановлені, видаліть їх:

$ sudo apt-get remove docker docker-engine docker.io containerd runc

 

Нічого страшного, якщо apt-get повідомляє, що жодного з цих пакетів не встановлено. Вміст /var/lib/docker/, включаючи образи, контейнери, томи та мережі, зберігається. Якщо вам не потрібно зберігати існуючі дані і ви хочете почати з чистої установки, виконайте такі дії:

1. Видаліть пакети Docker Engine, CLI та Containerd:

$ sudo apt-get purge docker-ce docker-ce-cli containerd.io

 

2. Образи, контейнери, томи або файли настроєної конфігурації на хості не видаляються автоматично. Щоб видалити всі зображення, контейнери та томи, запустіть:

$ sudo rm -rf /var/lib/docker
$ sudo rm -rf /var/lib/containerd

 

Також ви повинні видалити всі редаговані файли конфігурації вручну.

 

Установка docker з використанням репозиторію

Залежно від ваших потреб, можливі різні варіанти встановлення Docker Engine. Більшість користувачів використовують рекомендований підхід - установка з репозиторію, тому ми також скористаємося ним.

Оновіть індекс пакетів apt і встановіть пакети, щоб дозволити використовувати репозиторій через HTTPS:

$ 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

 

Оновіть індекс пакету apt та встановіть останню версію Docker Engine та containerd:

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

 

Переконайтеся, що Docker Engine встановлено правильно, запустивши образ hello-world:

$ sudo docker run hello-world

 

Ця команда завантажує тестовий образ та запускає його в контейнері. Коли контейнер запускається, він друкує повідомлення та закривається:

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

To generate this message, Docker took the following steps:
 1. The Docker client contacted the Docker daemon.
 2. The Docker daemon pulled the "hello-world" image from the Docker Hub.
    (amd64)
 3. The Docker daemon created a new container from that image which runs the
    executable that produces the output you are currently reading.
 4. The Docker daemon streamed that output to the Docker client, which sent it
    to your terminal.

To try something more ambitious, you can run an Ubuntu container with:
 $ docker run -it ubuntu bash

Share images, automate workflows, and more with a free Docker ID:
 https://hub.docker.com/

For more examples and ideas, visit:
 https://docs.docker.com/get-started/

 

Керуйте Docker як користувач без повноважень root

Docker Engine встановлений та запущений. Але зараз вам потрібно використати sudo для запуску команд. Якщо ви не хочете, щоб команда docker починалася з sudo, створіть групу під назвою docker і додайте до неї користувачів. Щоб створити групу docker та додати свого користувача:

$ sudo groupadd docker

 

Додайте свого користувача до групи:

$ sudo usermod -aG docker $USER

 

Щоб активувати зміни в групі, вийдіть із системи та увійдіть знову або запустіть команду:

$ newgrp docker

 

Налаштування Docker для запуску під час завантаження системи

У Ubuntu служба Docker за замовчуванням настроєна на запуск під час завантаження. Якщо з якихось причин цього не відбувається, виконайте такі команди:

$ sudo systemctl enable docker.service
$ sudo systemctl enable containerd.service

 

Щоб вимкнути цю поведінку, використовуйте disable:

$ sudo systemctl disable docker.service
$ sudo systemctl disable containerd.service

Встановлення Docker Compose

У цьому випадку також керуватимемося документацією. Виконайте цю команду, щоб завантажити поточну стабільну версію Docker Compose:

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

Примітка: щоб встановити іншу версію Compose, замініть 1.29.2 версією Compose, яку ви хочете використовувати.

Застосуйте дозволи для файлу, що виконується, до бінарного файлу:

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

 

Перевірте, чи правильно пройшла установка:

$ docker-compose --version

 

На виході маєте отримати версію та білд, наприклад:

docker-compose version 1.29.2, build 5becea4c

 

На цьому сьогодні все. Успіхів!