Установка Docker в Ubuntu 16.04
Mar 16, 2017 11:18 · 488 words · 3 minute read
Docker — это программное обеспечение, которое широко используется для автоматизации развертывания и управления приложениями в контейнерах (виртуализация уровня операционой системы). Контейнеры во многом похожи на виртуальные машины, но при этом потребляют гораздо меньше ресурсов, меньше зависят от операционной системы машины-хоста и могут быть легко перенесены на другой хост или облако.
Ранее мы упоминали о LXC (Linux Containers), например, рассматривали последовательность действий при создании LXC-контейнера и некоторые нюансы настройки сети для LXC-контейнеров в ОС Debian 8, Centos 7 и Fedora 21, теперь давайте разберемся с процессом установки Docker в Ubuntu 16.04!
Действия производятся на:
lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 16.04.2 LTS
Release: 16.04
Codename: xenial
Проверяем текущую версию ядра:
uname -r
4.4.0-31-generic
Устанавливаем необходимые пакеты:
apt-get update
apt-get install apt-transport-https ca-certificates
apt-get install linux-image-extra-$(uname -r) linux-image-extra-virtual
Для установки Docker в Ubuntu 16.04 необходимо добавить в систему официальный репозиторий Docker, а также GPG ключ доступа к нему:
apt-key adv --keyserver hkp://p80.pool.sks-keyservers.net:80 --recv-keys 58118E89F3A912897C070ADBF76221572C52609D
echo "deb https://apt.dockerproject.org/repo ubuntu-xenial main" | sudo tee /etc/apt/sources.list.d/docker.list
apt-get update
Убедимся, что Docker будет устанавливаться из официального репозитория и выберем нужную версию пакета:
apt-cache policy docker-engine
docker-engine:
Installed: (none)
Candidate: 1.13.1-0~ubuntu-xenial
Version table:
1.13.1-0~ubuntu-xenial 500
500 https://apt.dockerproject.org/repo ubuntu-xenial/main amd64 Packages
1.13.0-0~ubuntu-xenial 500
500 https://apt.dockerproject.org/repo ubuntu-xenial/main amd64 Packages
1.12.6-0~ubuntu-xenial 500
500 https://apt.dockerproject.org/repo ubuntu-xenial/main amd64 Packages
1.12.5-0~ubuntu-xenial 500
500 https://apt.dockerproject.org/repo ubuntu-xenial/main amd64 Packages
1.12.4-0~ubuntu-xenial 500
500 https://apt.dockerproject.org/repo ubuntu-xenial/main amd64 Packages
1.12.3-0~xenial 500
500 https://apt.dockerproject.org/repo ubuntu-xenial/main amd64 Packages
1.12.2-0~xenial 500
500 https://apt.dockerproject.org/repo ubuntu-xenial/main amd64 Packages
1.12.1-0~xenial 500
500 https://apt.dockerproject.org/repo ubuntu-xenial/main amd64 Packages
1.12.0-0~xenial 500
500 https://apt.dockerproject.org/repo ubuntu-xenial/main amd64 Packages
1.11.2-0~xenial 500
500 https://apt.dockerproject.org/repo ubuntu-xenial/main amd64 Packages
1.11.1-0~xenial 500
500 https://apt.dockerproject.org/repo ubuntu-xenial/main amd64 Packages
1.11.0-0~xenial 500
500 https://apt.dockerproject.org/repo ubuntu-xenial/main amd64 Packages
Будем устанавливать docker-engine
версии 1.12.6, так как начиная с версии 1.13.0 изменился профиль AppArmor
для docker-контейнеров и они могут работать не так, как ожидается. Например, я не мог остановить работающий контейнер или удалить остановленный. Больше об AppArmor+Docker можно почитать здесь.
Установка docker-engine
:
aptitude install docker-engine=1.12.6-0~ubuntu-xenial
После завершения установки проверим текущую версию:
docker version
Client:
Version: 1.12.6
API version: 1.24
Go version: go1.6.4
Git commit: 78d1802
Built: Tue Jan 10 20:38:45 2017
OS/Arch: linux/amd64
Server:
Version: 1.12.6
API version: 1.24
Go version: go1.6.4
Git commit: 78d1802
Built: Tue Jan 10 20:38:45 2017
OS/Arch: linux/amd64
Запускаем сервис и добавляем его в автозагрузку:
systemctl start docker
systemctl enable docker
Контейнеры запускаются из образов Docker, хранящихся в реестрах. По умолчанию Docker пытается найти образы локально, на хост-машине, а если не находит то загружает образы из Docker Hub — общедоступного реестра образов. Вы также можете указывать другие реестры образов, например, размещенные в локальной сети (актуально при медленной скорости доступа в Интернет).
Проверить корректность установки Docker и доступ к Docker Hub, можно с помощью следующей команды:
docker run hello-world
Вывод должен быть примерно следующим (скоращен):
...
Hello from Docker.
This message shows that your installation appears to be working correctly.
...
На этом установка Docker в Ubuntu 16.04 закончена, можно приступать к созданию контейнеров и дальнейшему изучению Docker!