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

Вичерпний посібник із встановлення та налаштування Docker Community Edition на системах Ubuntu 20.04 LTS

Docker — популярний інструмент, який використовується командами DevOps для створення, розгортання та запуску додатків як переносних контейнерів. Контейнеризація — це процес, у якому програми, їх компоненти, конфігурації та залежності упаковуються в один файл, відомий як контейнери.

Контейнери подібні до віртуальних машин, але замість того, щоб запустити повну ОС і всі її служби, вони здебільшого залежать від ОС хосту. В результаті контейнери є більш зручними для використання ресурсів, але також мають перевагу ізоляції програми-контейнера від ОС хосту.

Доступні дві різні версії Docker: Docker Community Edition (Docker-CE) — це безкоштовна версія Docker, а Docker Enterprise Edition (Docker-EE) — для корпоративного та комерційного використання.

У цій статті ми розглянемо, як встановити Docker-CE на Ubuntu 20.04 LTS за допомогою офіційних репозиторіїв Docker і Ubuntu 20.04.

Встановіть Docker за допомогою офіційного репозитарію Docker

Пакет Docker, доступний у сховищі Ubuntu 20.04, може бути не останнім, наданим Docker, також якщо ви зіткнетеся з будь-якими проблемами з процесом встановлення або будь-якими помилками, спільнота Docker не зможе вам допомогти.

Тому рекомендується встановлювати Docker, використовуючи його офіційне сховище. Спочатку нам потрібно переконатися, що в нашій системі Ubuntu 20.04 не встановлено жодних пакетів Docker, потім додати репозиторій Docker і, нарешті, встановити Docker.

Видаліть старі версії

Старі пакети Docker називалися як докер, docker.io або докер-движок. Нам потрібно переконатися, що жоден із них не встановлено в системі, перш ніж інсталювати Docker з офіційного репозиторію Docker. Відкрийте термінал, натиснувши Ctrl+Alt+T потім виконайте таку команду:

sudo apt видалити docker docker.io containerd runc docker-engine

Виконайте наведену вище команду, навіть якщо ви оновлюєтеся, нічого страшного, якщо apt каже, що жоден з пакетів не встановлено, або якщо він не розпізнає жодного пакунка.

Додайте офіційний репозиторій Docker

Перш ніж ми зможемо використовувати прих щоб встановити Docker, нам потрібно налаштувати репозиторій Docker. Ми розпочнемо процес з оновлення індексу пакетів та встановлення залежностей, необхідних для додавання репозиторію HTTPS.

sudo apt update sudo apt install apt-transport-https ca-certificates curl gnupg-agent software-properties-common

GPG — це функція безпеки, яка використовується для забезпечення автентичності програмного забезпечення, яке ви встановлюєте. Імпортуйте ключ GPG репозиторію за допомогою показаного завивати команда:

curl -fsSL //download.docker.com/linux/ubuntu/gpg | sudo apt-key додати -

Далі додайте репозиторій Docker до своєї системи Ubuntu 20.04:

sudo add-apt-repository "deb [arch=amd64] //download.docker.com/linux/ubuntu $(lsb_release -cs) стабільний"

Команда $(lsb_release –cs) повертає кодове ім’я вашої інсталяції Ubuntu, яке є «основним» для Ubuntu 20.04. Щоб додати нічний або тестовий репозиторій Docker, ви можете замінити це слово стабільний з щоночі або з випробування у наведеній вище команді.

Але рекомендується дотримуватися стабільних випусків, оскільки вони перевірені і менш схильні до помилок і збоїв.

Встановіть Docker

Офіційний пакет Docker називається як docker-ce і він доступний лише в репозиторії Docker. Оновіть базу даних репозиторію та встановіть останню версію Docker CE та контейнера, виконавши:

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

За бажанням можна встановити певну версію Docker. Щоб переглянути всі доступні версії Docker, виконайте таку команду:

apt-cache madison docker-ce

Потім встановіть конкретну версію, використовуючи рядок у другому стовпці (рядок у червоних полях) і виконайте таку команду

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

Наприклад, замінити з 5:19.03.10~3-0~ubuntu-focal у команді та запустіть, щоб встановити версію Docker 19.03.10.

sudo apt install docker-ce=5:19.03.10~3-0~ubuntu-focal docker-ce-cli=5:19.03.10~3-0~ubuntu-focal containerd.io

Встановіть Docker за допомогою репозиторію Ubuntu 20.04

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

Подібно до попереднього методу, нам потрібно переконатися, що у нас немає старіших пакетів Docker. Тоді ми зможемо оновити репозиторії Ubuntu 20.04 і негайно встановити Docker.

Щоб видалити будь-які непотрібні старі пакети Docker, виконайте таку команду:

sudo apt видалити docker docker.io containerd runc docker-engine

Добре, якщо apt каже, що жоден з пакетів не встановлено в системі. Нам потрібно запустити цю команду, щоб переконатися, що старий пакет не затримується, оскільки це може спричинити проблеми під час запуску останньої версії Docker.

Пакет Docker у репозиторії Ubuntu 20.04 називається як docker.io, щоб встановити Docker, виконайте таку команду:

sudo apt встановити docker.io

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

Налаштування після встановлення

Перш ніж ми запускатимемо будь-які контейнери на Docker, ось кілька налаштувань і змін, щоб зробити роботу з докером більш гладкою.

Запустіть службу Docker із запуском Ubuntu 20.04

Якщо ви хочете автоматично запускати демон Docker у вашій системі Ubuntu 20.04, виконайте таку команду:

sudo systemctl увімкнути докер

Тепер кожен раз, коли ви завантажуєте свою машину Ubuntu 20.04, Docker буде запущено і буде готово витягувати зображення та запускати контейнери.

Запустіть Docker без команди Sudo

За замовчуванням лише root, sudo користувачі та користувачі групи Docker можуть виконувати команду docker.

Таким чином, виконати команду Docker без sudo ви повинні бути або root, або користувачем у групі Docker, яка була створена під час встановлення Docker. Щоб додати користувача до групи Docker, виконайте:

sudo usermod -aG docker $USER

The $USER є змінною середовища, яка виводить ваше ім’я користувача в команді вище. Вийдіть із системи та увійдіть знову, щоб оновити членство в групі, тепер ви можете запустити команду docker без неї sudo.

Перевірте встановлення Docker

Після завершення встановлення демон Docker автоматично запуститься у фоновому режимі. Щоб перевірити статус Docker, виконайте таку команду:

sudo systemctl докер стану

The статус systemclt команда повинна відобразити вихід, як показано нижче.

Тепер, коли ми знаємо, що Docker Engine працює, ми нарешті можемо протестувати запуск деяких контейнерів. Виконайте таку команду, щоб перевірити, чи Docker працює належним чином.

Докер-контейнер запускає hello-world

Зображення «hello-world» використовується для перевірки встановлення Docker, воно повинно виводити такий текст:

ath@PC:~$ контейнер докера запустити hello-world Не вдається знайти зображення 'hello-world:останнє' локально останнє: Витягування з бібліотеки/hello-world 0e03bdcc26d7: Витягнути повний дайджест: sha256:6a65f928fb91fcfbc963f7awere8f47f7cfbc963f7ae3e40f47a8e47f47a8e6e47f7a8e6e47f7a8e67df47a8e40e4e4e4e4e4e4e4e4e4e4e4e4e4e4e6d6d7 світ: останні Привіт від Docker! Це повідомлення показує, що ваша інсталяція працює правильно. Щоб створити це повідомлення, Docker зробив такі кроки: 1. Клієнт Docker зв’язався з демоном Docker. 2. Демон Docker витягнув образ "hello-world" з Docker Hub. (amd64) 3. Демон Docker створив новий контейнер із цього образу, який запускає виконуваний файл, який створює результати, які ви зараз читаєте. 4. Демон Docker передав цей результат на клієнт Docker, який відправив його на ваш термінал. Щоб спробувати щось більш амбітне, ви можете запустити контейнер Ubuntu за допомогою: $ docker run -it ubuntu bash Діліться зображеннями, автоматизуйте робочі процеси та інше за допомогою безкоштовного ідентифікатора Docker: //hub.docker.com/ Додаткові приклади та ідеї див. : //docs.docker.com/get-started/ 

Ми показали вам, як встановити Docker за допомогою репозиторіїв Ubuntu і Docker, а також побачили деякі зміни якості життя, щоб спростити використання Docker.

Щоб дізнатися більше про Docker, перегляньте офіційну документацію Docker.