Установка Docker и базовые операции над контейнерами в CentOS / RHEL Linux

Установка Docker и базовые операции над контейнерами в CentOS / RHEL Linux

Docker — программное обеспечение, предназначенное для создания, развертывания и запуска приложений. Контейнер — форма виртуализации, позволяющая упаковать приложение и его зависимости в последовательную и изолированную среду. Благодаря использованию контейнеров, программа будет работать одинаково на любой операционной системе, независимо от базовой инфраструктуры.

Мы подготовили целую серию статей, посвященных использованию Docker в дистрибутивах CentOS / RHEL Linux:

  1. Установка Docker и базовые операции над контейнерами в CentOS / RHEL Linux.
  2. Как управлять приложениями внутри контейнера Docker.
  3. Создание собственного образа Docker с помощью Dockerfile.

В этой статье мы расскажем, как установить Docker в CentOS / RHEL Linux, и покажем базовые примеры использования этой программы.

Содержание:

  1. Установка Docker в CentOS / RHEL Linux
    1. Удаление уже установленных версий Docker
    2. Установка утилиты yum-utils и загрузка репозитория Docker
    3. Установка Docker Engine и Docker Compose
  2. Запуск и проверка работы Docker
  3. Выполнение базовых команд Docker
  4. Управление образами Docker
  5. Работа с контейнерами Docker
    1. Создание контейнера Docker
    2. Запуск и остановка контейнера Docker
    3. Запуск интерактивной сессии внутри контейнера
    4. Выход из интерактивного сеанса контейнера
  6. Выводы

Установка Docker в CentOS / RHEL Linux

Процесс установки программы Docker имеет несколько этапов, которые нужно выполнить последовательно.

Удаление уже установленных версий Docker

Чтобы избежать ошибок при инсталляции Docker, удалите старые версии этого программного обеспечения из Вашей операционной системы. Для этого используйте следующую команду:

Установка утилиты yum-utils и загрузка репозитория Docker

Для подключения официального репозитория Docker, необходима утилита yum-utils. Установить ее на Вашу ОС можно с помощью команды:

 

yum utils install

Теперь для подключения репозитория Docker Вам достаточно выполнить в терминале:

 

add repo

Установка Docker Engine и Docker Compose

Наконец, Вам осталось установить:

  • Docker Engine — платформа, включающая демон Docker и командную строку;
  • containerd — среда выполнения контейнеров, используемая Docker Engine для низкоуровневых операций;
  • Docker Compose — отдельный инструмент для управления многоконтейнерными приложениями.

Эти инструменты являются важными компонентами экосистемы Docker. Чтобы их установить, выполните в терминале следующую команду:

 

install docker

Запуск и проверка работы Docker

После завершения процесса инсталляции Docker, утилиту нужно запустить. Для этого воспользуйтесь системной программой systemctl с подкомандой start:

 

start docker

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

 

Чтобы проверить, что Docker функционирует корректно, запустите контейнер из образа hello-world:

 

docker hello world

Выполнение базовых команд Docker

Docker имеет ряд команд, которые позволяют пользователями выполнять различные операции над этим приложением. Чтобы вывести в командную строку их список, выполните в терминале:

 

docker commands

Для примера просмотрим настройки приложения Docker:

 

docker info

Чтобы отобразить на экране версию этого ПО, примените команду:

 

docker version

Управление образами Docker

Docker Hub — облачный сервис для хранения, обмена и управления Docker-образами. С помощью этого онлайн-ресурса пользователи могут создавать, загружать, и совместно использовать образы.

Важно понимать разницу между образом и контейнером Docker:

  1. Образ — статичный, неизменяемый пакет со всеми компонентами, необходимыми для запуска приложения. По сути, он является шаблоном для контейнера.
  2. Контейнер — динамичный экземпляр образа. Он запускает изолированное приложение, имеет свое собственное состояние и может изменяться во время выполнения.

Чтобы найти определенный образ на Docker Hub, выполните команду docker search с его названием в качестве аргумента. Например:

 

docker search

Для загрузки образа из Docker Hub используйте команду docker pull с его названием. К примеру:

 

docker pull

Чтобы просмотреть все загруженные образы Docker в ОС, выполните команду:

 

docker images

На скриншоте выше видно, что предыдущая команда выводит на экран такую информацию об образах:

  • REPOSITORY — название репозитория, к которому принадлежит образ;
  • TAG — версия;
  • IMAGE ID — уникальный идентификатор;
  • CREATED — метка времени, указывающая, когда был создан образ;
  • SIZE — размер.

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

 

Где:

  • rmi — команда, удаляющая образ;
  • [OPTIONS] — необязательные опции, которые расширяют функционал команды;
  • IMAGE [IMAGE...] — одно / несколько названий образов или их идентификаторов, разделенных пробелами.

Работа с контейнерами Docker

Давайте посмотрим, как работать с контейнерами Docker.

Создание контейнера Docker

Команда docker run используется для создания и запуска контейнера на основе указанного образа. Ее синтаксис имеет следующий вид:

 

Здесь:

  • [OPTIONS] — необязательные опции;
  • IMAGE — название или идентификатор образа, на основе которого создается контейнер;
  • [COMMAND] — команда, которую нужно выполнить внутри контейнера сразу же после его создания;
  • [ARG...] — аргументы, передаваемые команде [COMMAND].

Для примера создадим контейнер на базе образа ubuntu, который мы ранее загрузили, и выполним в нем команду cat /etc/issue:

 

docker run ubuntu

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

 

docker ps

Команда вывела на экран следующую информацию о контейнерах:

  • CONTAINER ID — уникальный идентификатор;
  • IMAGE — образ, использованный для создания контейнера;
  • COMMAND — команда, выполняемая при запуске контейнера;
  • CREATED — время, прошедшее с момента создания контейнера.
  • STATUS — текущий статус контейнера;
  • PORTS — порты, используемые контейнером;
  • NAMES — название.

По умолчанию Docker самостоятельно присваивает название контейнеру. Если Вы хотите указать собственное название контейнера при его создании, вместе с командой docker run примените параметр --name. К примеру:

 

docker run name

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

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

 

docker start

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

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

Для запуска контейнера в интерактивном режиме и выделения для него псевдотерминала, добавьте опции -i и -t к команде docker run. Например, создадим новый контейнер на основе образа ubuntu, а также откроем в нем интерактивный терминал с запуском оболочки Bash:

 

run interactive session

На скриншоте выше видно, что после запуска контейнера мы выполнили несколько команд Linux.

Выход из интерактивного сеанса контейнера

Существует два способа выхода из интерактивной сессии контейнера: с остановкой контейнера и без нее.

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

 

exit container

Чтобы выйти из контейнера, не останавливая его работу, последовательно нажмите сочетания клавиш Ctrl + p и Ctrl + q. Для повторного присоединения к интерактивной сессии запущенного контейнера используйте команду:

 

docker manipulation with interactive session

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

Выводы

Мы показали Вам пошаговый процесс установки Docker в CentOS / RHEL Linux, а также продемонстрировали базовые команды для управления контейнерами и образами. Чтобы более детально разобраться с Docker, рекомендуем прочесть остальные статьи из этой серии.

Спасибо за время, уделенное прочтению статьи!

Если возникли вопросы — задавайте их в комментариях.

Подписывайтесь на обновления нашего блога и оставайтесь в курсе новостей мира инфокоммуникаций!

Чтобы знать больше и выделяться знаниями среди толпы IT-шников, записывайтесь на курсы Ciscoкурсы по кибербезопасностиполный курс по кибербезопасностикурсы DevNet / DevOps (программируемые системы) от Академии Ciscoкурсы Linux от Linux Professional Institute на платформе SEDICOMM University (Университет СЭДИКОММ).

Курсы Cisco, Linux, кибербезопасность, DevOps / DevNet, Python с трудоустройством!

Спешите подать заявку! Группы стартуют 25 января, 26 февраля, 22 марта, 26 апреля, 24 мая, 21 июня, 26 июля, 23 августа, 20 сентября, 25 октября, 22 ноября, 20 декабря.
Что Вы получите?
  • Поможем стать экспертом по сетевой инженерии, кибербезопасности, программируемым сетям и системам и получить международные сертификаты Cisco, Linux LPI, Python Institute.
  • Предлагаем проверенную программу с лучшими учебниками от экспертов из Cisco Networking Academy, Linux Professional Institute и Python Institute, помощь сертифицированных инструкторов и личного куратора.
  • Поможем с трудоустройством и стартом карьеры в сфере IT — 100% наших выпускников трудоустраиваются.
Как проходит обучение?
  • Проведем вечерние онлайн-лекции на нашей платформе.
  • Согласуем с вами удобное время для практик.
  • Если хотите индивидуальный график — обсудим и реализуем.
  • Личный куратор будет на связи, чтобы ответить на вопросы, проконсультировать и мотивировать придерживаться сроков сдачи экзаменов.
  • Всем, кто боится потерять мотивацию и не закончить обучение, предложим общение с профессиональным коучем.
А еще поможем Вам:
  • отредактировать или создать с нуля резюме;
  • подготовиться к техническим интервью;
  • подготовиться к конкурсу на понравившуюся вакансию;
  • устроиться на работу в Cisco по специальной программе. Наши студенты, которые уже работают там: жмите на #НашиВCisco Вконтакте, #НашиВCisco Facebook.
Чтобы учиться на курсах Cisco, Linux LPI, кибербезопасность, DevOps / DevNet, Python, подайте заявку или получите бесплатную консультацию.

Больше похожих постов

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

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Заполните поле
Заполните поле
Пожалуйста, введите корректный адрес email.
Вы должны согласиться с условиями для продолжения


Поиск по сайту
Лучшее
Популярное
Рубрики
Меню