Установка 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? Для решения каких задач? Напишите в комментариях!

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

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

8 комментариев

  1. Василий Декабрь 25, 2016 Ответить
    • Иван Сентябрь 2, 2017 Ответить
  2. Sergey Декабрь 25, 2016 Ответить
  3. Sergey Декабрь 25, 2016 Ответить
  4. AlektroNik Декабрь 27, 2016 Ответить
  5. Vixen Май 1, 2017 Ответить
  6. Алекс Сентябрь 8, 2017 Ответить

Ответить

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

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