Установка Docker в Ubuntu 20.04
- Просмотры: 663
- Категория: Администрирование
- Создано: 17 февраля 2021
- Тэги:
Docker - очень популярная в настоящее время технология для запуска процессов в контейнерах. В таких контейнерах процессы работают с изолированными ресурсами. Контейнеры подобны виртуальным машинам, но более компактны. В этой статье я опишу процесс установки Docker на сервер под управлением Ubuntu 20.04. Вообще говоря, установить Docker можно из репозитория самой Ubuntu. Но там находится не самый свежий пакет. Мы же установим Docker из официального репозитория на docker.com.
Прежде всего обновляем список пакетов на нашем сервере.
$ sudo apt update
Добавляем несколько пакетов, которые позволяют менеджеру apt устанавливать другие пакеты через https:
$ sudo apt install apt-transport-https ca-certificates curl software-properties-common
Добавляем GPG-ключ официального репозитория Docker в нашу систему:
$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
Добавляем сам репозиторий в источники APT:
$ sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu focal stable"
Еще раз обновляем список пакетов.
$ sudo apt update
Проверяем, что пакет с Docker будет установлен из официального репозитория.
$ apt-cache policy docker-ce
Мы должны получить приблизительно такой вывод. Видно, что пакет Docker будет забираться с сервера download.docker.com
docker-ce:
Installed: 5:20.10.3~3-0~ubuntu-focal
Candidate: 5:20.10.3~3-0~ubuntu-focal
Version table:
*** 5:20.10.3~3-0~ubuntu-focal 500
500 https://download.docker.com/linux/ubuntu focal/stable amd64 Packages
100 /var/lib/dpkg/status
Устанавливаем Docker в нашу систему.
$ sudo apt install docker-ce
Проверяем статус docker-демона.
$ sudo systemctl status docker
Должны получить приблизительно следующий вывод. Демон находится в состоянии active (running)
● docker.service - Docker Application Container Engine
Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled)
Active: active (running) since Wed 2021-02-17 17:56:09 UTC; 43min ago
TriggeredBy: ● docker.socket
Docs: https://docs.docker.com
Main PID: 5156 (dockerd)
Tasks: 10
Memory: 42.8M
CGroup: /system.slice/docker.service
└─5156 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock
Feb 17 17:56:08 ubuntu-server-1 dockerd[5156]: time="2021-02-17T17:56:08.033948437Z" level=warning msg="Your kernel doe>
Feb 17 17:56:08 ubuntu-server-1 dockerd[5156]: time="2021-02-17T17:56:08.033965368Z" level=warning msg="Your kernel doe>
Feb 17 17:56:08 ubuntu-server-1 dockerd[5156]: time="2021-02-17T17:56:08.033975166Z" level=warning msg="Your kernel doe>
Feb 17 17:56:08 ubuntu-server-1 dockerd[5156]: time="2021-02-17T17:56:08.035411046Z" level=info msg="Loading containers>
Feb 17 17:56:08 ubuntu-server-1 dockerd[5156]: time="2021-02-17T17:56:08.890277496Z" level=info msg="Default bridge (do>
Feb 17 17:56:09 ubuntu-server-1 dockerd[5156]: time="2021-02-17T17:56:09.423853312Z" level=info msg="Loading containers>
Feb 17 17:56:09 ubuntu-server-1 dockerd[5156]: time="2021-02-17T17:56:09.652192667Z" level=info msg="Docker daemon" com>
Feb 17 17:56:09 ubuntu-server-1 dockerd[5156]: time="2021-02-17T17:56:09.653158705Z" level=info msg="Daemon has complet>
Feb 17 17:56:09 ubuntu-server-1 systemd[1]: Started Docker Application Container Engine.
Сами Docker-контейнеры по умолчанию может запускать и останавливать только суперпользователь root. Если мы хотим разрешить себе производить административные действия с контейнерами, добавляем текущего пользователя в группу docker.
$ sudo usermod -aG docker ${USER}
Выходим из системы. И опять залогиниваемся. Проверяем, что теперь мы состоим в группе docker
$ id -nG
Чтобы добавить другого пользователя с именем username в группу docker, используем следующую команду:
$ sudo usermod -aG docker username
В нашей системе Docker установлен!