Установка docker на Ubuntu 16.04 | Losst

Установка docker на Ubuntu 16.04

Docker - это система управления контейнерами для Linux. Если говорить просто, то контейнеры - это что-то среднее между виртуальными машинами, с полной изоляцией и chroot окружением. Все процессы выполняются в изолированном пространстве, но в то же время на одном ядре, что позволяет экономить ресурсы основной системы.

Docker не реализует собственную систему контейнеров, он использует LXC и выступает в качестве оболочки, которая позволяет автоматически загружать, устанавливать и запускать образы контейнеров, а также управлять ими. Все действия выполняются в несколько команд и намного проще чем при использовании lxc. В этой статье мы рассмотрим как выполняется установка docker на Ubuntu 16.04, а также как использовать контейнеры в Linux.

Системные требования

Для работы docker ваша система должна отвечать таким требованиям:

  • Программа работает только на системах 64 битной архитектуры;
  • Необходимо ядро версии не ниже чем 3.10. В более старых версиях реализованы не все необходимые возможности, и это будет вызывать различные ошибки;
  • Быстрый интернет - для загрузки или выгрузки образов контейнера.

Если вы используете Ubuntu 16.04, то проблем с ядром не возникнет, так как эта система поставляется с ядром 4.2 по умолчанию.

Установка Docker в Ubuntu 16.04

Перед тем как переходить к установке самой программы, нужно обновить систему до актуального состояния. Для этого выполните:

$ sudo apt update && sudo apt upgrade

Затем необходимо установить дополнительные пакеты ядра, которые позволяют использовать Aufs для контейнеров Docker. С помощью этой файловой системы мы сможем следить за изменениями и делать мгновенные снимки контейнеров:

$ sudo apt install linux-image-extra-$(uname -r) linux-image-extra-virtual

После того как все приготовления завершены и вы убедились что ваша система полностью готова, можно перейти к установке. Мы будем устанавливать программу из официального репозитория разработчиков. Чтобы установить Docker Ubuntu 16.04 выполните в терминале:

$ sudo apt-key adv --keyserver hkp://p80.pool.sks-keyservers.net:80 --recv-keys 58118E89F3A912897C070ADBF76221572C52609D

$ sudo apt-add-repository 'deb https://apt.dockerproject.org/repo ubuntu-xenial main'
$ sudo apt update && apt-cache policy docker-engine

И установка Docker на Ubuntu:

$ sudo apt install -y docker-engine

Теперь установка Docker Ubuntu 16.04 и всех необходимых компонентов завершена. Первой командой мы добавили ключ репозитория разработчиков, второй - сам репозиторий. Далее обновили списки пакетов и сообщили системе что можно заменять системные пакеты на пакеты из этого репозитория.

Чтобы завершить установку осталось добавить нашего пользователя в группу docker. Иначе при запуске утилиты вы будете получать ошибку подключения к сокету:

Для добавления выполните:

$ sudo usermod -aG docker $(whoami)

 

Затем проверяем запущен ли сервис:

$ sudo systemctl status docker

 

Все готово к работе. Теперь рассмотрим подробнее использование Docker.

Утилита Docker

Все действия с контейнерами выполняются утилитой docker. Ее можно запускать от имени вашего пользователя после того, как он был добавлен в группу программы. Синтаксис утилиты очень прост:

$ docker опции команда опции_команды аргументы

Давайте сначала рассмотрим основные опции утилиты их всего несколько:

  • -D - включить режим отладки;
  • -H - подключиться к серверу, запущенному на другом компьютере;
  • -l - изменить уровень ведения логов, доступно: debug,info,warn,error,fatal;
  • -v - показать версию;
  • --help вывести справку по команде или утилите в целом;

Команд намного больше, ниже приведены все команды, которые вы можете использовать в своих программах:

  • attach - подключиться к запущенному контейнеру;
  • build - собрать образ из инструкций dockerfile;
  • commit - создать новый образ из изменений контейнера;
  • cp - копировать файлы между контейнером и файловой системой;
  • create - создать новый контейнер;
  • diff - проверить файловую систему контейнера;
  • events - посмотреть события от контейнера;
  • exec - выполнить команду в контейнере;
  • export - извлечь содержимое контейнера в архив;
  • history - посмотреть историю изменений образа;
  • images - список установленных образов;
  • import - создать контейнер из архива tar;
  • info - посмотреть информацию о системе;
  • inspect - посмотреть информацию о контейнере;
  • kill - остановить запущенный контейнер;
  • load - загрузить образ из архива;
  • login - авторизация в официальном репозитории Docker;
  • logout - выйти из репозитория Docker;
  • logs - посмотреть логи контейнера;
  • pause - приостановить все процессы контейнера;
  • port - подброс портов для контейнера;
  • ps - список запущенных контейнеров;
  • pull - скачать образ контейнера из репозитория;
  • push - отправить образ в репозиторий;
  • restart - перезапустить контейнер;
  • rm - удалить контейнер;
  • run - выполнить команду в контейнере;
  • save - сохранить образ в архив tar;
  • search - поиск образов в репозитории по заданному шаблону;
  • start - запустить контейнер;
  • stats - статистика использования ресурсов контейнером;
  • stop - остановить контейнер;
  • top - посмотреть запущенные процессы в контейнере;
  • unpause - проложить выполнение процессов в контейнере.

В этой статье мы будем часто использовать команду run, рассмотрим ее опции:

  • -e - переменные окружения для команды;
  • -h - имя хоста контейнера;
  • -i - интерактивный режим, связывающий stdin терминала с командой;
  • -m - ограничение памяти для команды;
  • -u - пользователь, от имени которого будет выполнена команда;
  • -t - связать tty с контейнером для работы ввода и вывода;
  • -v - примонтировать директорию основной системы в контейнер.

Теперь, когда мы рассмотрели все основы, приведем несколько примеров работы с контейнерами. Это очень просто.

Использование Docker в Ubuntu

Чтобы убедиться что все работает давайте запустим тестовый образ. Для этого наберите:

$ docker run hello-world

 

Больше ничего не нужно, программа сама скачает образ, и выполнит оболочку в нем. Вы увидите сообщение Hello from Docker:

 

Поиск и установка контейнеров

Использование docker очень простое по своей сути. Если вы не знаете название нужного пакета, можете воспользоваться поиском, например, найдем Ubuntu:

$ docker search ubuntu

Утилита выведет список всех доступных для загрузки образов из репозитория Docker, которые содержат такое слово. Колонка Official означает, что образ поддерживается официальным разработчиком, а Stars - это количество пользователей, которым этот образ понравился.

Для загрузки образа на локальный компьютер используйте команду pull:

$ docker pull ubuntu

После завершения загрузки вы можете посмотреть список установленных образов:

$ docker images

Запуск контейнера

Теперь, давайте запустим командную оболочку контейнера с помощью команды run, для получения интерактивного доступа используйте опции -i и -t:

$ docker run -it ubuntu

Вы в окружении контейнера. У вас есть права суперпользователя, но вы не можете получить доступ к основной системе. Контейнер содержит минимум необходимых файлов, нет даже текстовых редакторов. Для установки чего-либо сначала нужно обновить репозиторий:

$ apt-get update

Например, установим утилиту dialog:

$ apt-get install -y dialog

Сохранение изменений

Вы можете изменять контейнер как захотите, добавлять и удалять программы и многое другое. Но когда вы его удалите, все изменения будут потеряны. Вы можете создать новое образ из модифицированного контейнера, для этого используется команда commit. Сначала смотрим список запущенных контейнеров:

$ docker ps

Отсюда возьмите id контейнера, затем выполните такую команду для создания нового образа:

$ docker commit -m "изменения" -a "автор" ид_контейнера repository/имя

Например:

$ docker commit -m "Zenity" -a "Seriyyy95" d034b794a3bf repository/ubuntu-zenity

Новый образ был сохранен на вашем компьютере и вы можете увидеть его в списке образов:

$ docker images

Список контейнеров

Как я уже говорил, вы можете посмотреть список запущенных контейнеров с помощью команды ps:

$ docker ps

Если вам нужны все контейнеры, используйте опцию -a:

$ docker ps -a

Чтобы вывести последний созданный контейнер, используйте:

$ docker ps -l

Управление контейнерами

Чтобы остановить запущенный контейнер используйте команду stop:

$ docker stop d034b794a3bf

Для запуска:

$  docker start d034b794a3bf

Вы можете подключиться к запущенному контейнеру с помощью attach:

$ docker attach d034b794a3bf

Чтобы удалить контейнер со всеми изменениями выполните:

$ docker rm d034b794a3bf

Выводы

Вы этой статье мы рассмотрели как выполняется установка docker ubuntu 16.04. В этом дистрибутиве процесс установки не будет трудным даже для новичков. А возможность установки различных дистрибутивов в несколько команд может быть полезной во многих ситуациях. А вы пользуетесь Docker? Для решения каких задач? Напишите в комментариях!

Основатель и администратор сайта losst.ru, увлекаюсь открытым программным обеспечением и операционной системой Linux. В качестве основной ОС сейчас использую OpenSUSE. Кроме Linux интересуюсь всем, что связано с информационными технологиями и современной наукой.

Ваше имя тоже может быть здесь. Как? Пишите для нас! Смотрите подробнее как стать автором Losst.

Оцените статью:

1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (14 оценок, среднее: 4,64 из 5)
Загрузка...

  5 comments for “Установка docker на Ubuntu 16.04

  1. Декабрь 25, 2016 at 2:45 пп

    Достаточно зайти на оф. сайт докера и посмотреть гид по установке — статья пустая и никчемная

  2. Sergey
    Декабрь 25, 2016 at 3:04 пп

    после команды: docker run hello-world
    docker: Cannot connect to the Docker daemon. Is the docker daemon running on this host?.

    • Декабрь 25, 2016 at 3:57 пп

      Перелогиньтесь в системе.

  3. Sergey
    Декабрь 25, 2016 at 3:58 пп

    Хорошая статья.

  4. Декабрь 27, 2016 at 8:49 дп

    Для начала вполне интересно. Вот руки дойдут .. буду пробовать 🙂

Добавить комментарий

Сообщить об опечатке

Текст, который будет отправлен нашим редакторам: