Debian

Автоматическая сборка образов Docker в Debian 10 (Buster)

Автоматическая сборка образов Docker в Debian 10 (Buster)

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

Docker можно установить в Linux, Mac и Windows. Хотя он изначально работает в Linux, для него требуется, чтобы Hyper-V был включен в Windows.

Docker также имеет Docker Hub, облачный сервис, где мы можем найти изображения от проверенных издателей, а также можем публиковать и делиться своими собственными изображениями.  После того, как мы извлекли образ из Docker Hub, мы можем создать множество контейнеров из одного и того же образа.

Особенности Docker:

  1. Это программное обеспечение с открытым исходным кодом.
  2. Предоставляет платформу как услугу для запуска приложения в виртуальной среде.
  3. Понять и использовать технологию Docker очень легко.
  4. Приложения Docker можно легко перемещать и запускать в любой системе с установленным Docker.
  5. Очень быстрая миграция док-контейнеров из облачной среды в локальный и наоборот.

Docker может читать и выполнять инструкции внутри Dockerfile и автоматически создавать указанный образ. В этом руководстве будет показано, как мы можем автоматически создать образ докера с помощью файла Docker в операционной системе Debian 10 (Buster). Мы развернем веб-сервер Nginx и создадим собственный образ Docker.

Предпосылки:

  1. Доступ к привилегиям sudo.
  2. Базовые знания команд Docker.

Прежде чем мы начнем наше путешествие, давайте быстро рассмотрим некоторые важные концепции и требования, которые необходимы для понимания этого руководства. Во-первых, в вашей системе должен быть установлен Docker. Если вы еще этого не сделали, вы можете следовать этому руководству, чтобы установить докер. Вы также можете использовать официальное руководство, доступное на веб-сайте Docker, для установки Docker на Debian 10.

  1. Dockerfile: Этот файл описывает всю конфигурацию, которую мы хотим иметь в нашем контейнере Docker. Это набор инструкций, определяющих, как создать образ.
  2. Образ Docker: На самом деле это образ шаблона, который мы можем использовать для создания нашего настраиваемого контейнера. Мы можем сказать, что образ докера - это неизменяемый файл или изображение только для чтения.
  3. Контейнер Docker: Проще говоря, контейнер Docker - это экземпляр нашего образа докера. Мы можем сказать, что образ Docker является базовым, и мы создаем настраиваемый контейнер поверх образа Docker, добавляя к этому образу доступный для записи слой.  Мы можем использовать один образ Docker для создания нескольких контейнеров Docker.

Надеюсь, этого обзора нам хватит, чтобы начать работу с Docker. Итак, давайте посмотрим, как автоматически создавать образы с помощью Dockerfile.

Шаг 1. Самый первый шаг в создании образа начинается с файла докера. Итак, давайте сначала создадим рабочий каталог, а внутри него мы сделаем Dockerfile.

$ mkdir mydock1 # Это создает новый каталог.
$ nano Dockerfile # Это наш dockerfile.

Мы можем использовать любой текстовый редактор, кроме nano, например vi или vim.

Шаг 2. Добавьте следующий контент в Dockerfile и сохраните его.

ОТ ubuntu
Сопровождение linuxhint
ЗАПУСТИТЬ apt-get update \
&& apt-get install -y nginx \
&& apt-очистить \
&& rm -rf / var / lib / apt / lists / * / tmp / * / var / tmp / * \
&& echo "демон выключен;" >> / и т. д. / nginx / nginx.conf
ЭКСПОЗИЦИЯ 80
Запуск службы CMD nginx

Шаг 3. Теперь, когда у нас есть готовый файл Dockerfile, пришло время создать образ. Просто используйте следующую команду:

$ sudo docker build -t изображение веб-сервера: v1 .

Синтаксис:

sudo docker build -t имя: тег / путь / к / каталогу / из / dockerfile

Примечание: Всегда запускайте команду docker с правами root или «sudo», чтобы избежать ошибки: «Получено отказано в разрешении при попытке подключиться к сокету демона Docker в unix: /// var / run / docker»

В приведенной выше команде изображение веб-сервера - это имя нашего образа докера. Вы можете использовать здесь свое собственное имя. V1 - это тег для нашего изображения.

Если все пойдет правильно, мы должны увидеть следующий результат:

Отправка контекста сборки демону Docker 2.048кБ

Шаг 1/5: ИЗ ubuntu

-> f643c72bc252

Шаг 2/5: MAINTAINER linuxhint

-> Использование кеша

-> 1edea6faff0d

Шаг 3/5: ЗАПУСТИТЕ apt-get update && apt-get install -y nginx && apt-get clean && rm -rf / var / lib / apt / lists / * / tmp / * / var / tmp / * && echo « демон прочь; " >> / и т. д. / nginx / nginx.conf

-> Использование кеша

-> 81398a98cf92

Шаг 4/5: ЭКСПОЗИЦИЯ 80

-> Использование кеша

-> 2f49ffec5ca2

Шаг 5/5: запуск службы CMD nginx

-> Использование кеша

-> 855796a41bd6

Успешно построено 855796a41bd6

Изображение веб-сервера успешно отмечено тегами: v1


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

$ sudo docker изображения

Шаг 5. Теперь мы запустим наш образ докера, чтобы убедиться, что он работает должным образом:

$ sudo docker run -d -p 80:80 изображение веб-сервера: v1

После успешного запуска он сгенерирует длинный идентификатор, как показано ниже:

ШАГ 6. Если все пойдет правильно, мы сможем увидеть нашу веб-страницу, работающую в нашем веб-браузере nginx, внутри докера. Выполните следующую команду, чтобы проверить это:

$ curl 'ip_address'

Имейте в виду, что используемый здесь IP-адрес - это IP-адрес контейнера докеров, установленный в операционной системе нашего хоста. Чтобы точно узнать требуемый здесь IP-адрес, выполните на хосте следующую команду:

$ ip a | grep ^ докер

Вышеупомянутая команда будет содержать IP-адрес, который мы должны использовать здесь.

Приведенная выше команда curl отобразит индекс.html-контент веб-сервера nginx.

Еще один простой и понятный способ - передать докер в качестве аргумента curl, как показано ниже:

Шаг 7. При желании вы можете проверить, какой порт и какие процессы запущены внутри нашего контейнера докеров. Выполните следующую команду:

$ sudo docker ps

На этом мы завершаем наше руководство по автоматическому созданию образов Docker в Debian 10 (Buster). Мы видели, как мы можем создавать образы Docker из Dockerfile вместо того, чтобы вручную редактировать каждое изображение.

Хотя это руководство выполнено в Debian 10, оно также должно работать в других дистрибутивах на основе Debian, таких как Ubuntu, Linux mint и т. Д. Пожалуйста, не забудьте поделиться этим руководством с другими. Также подпишитесь на наш блог, чтобы получать последние обновления и инструкции по Linux.

Как изменить указатель мыши и размер курсора, цвет и схему в Windows 10
Указатель мыши и курсор в Windows 10 - очень важные аспекты операционной системы. То же самое можно сказать и о других операционных системах, так что,...
Бесплатные движки с открытым исходным кодом для разработки игр для Linux
В этой статье будет рассмотрен список бесплатных игровых движков с открытым исходным кодом, которые можно использовать для разработки 2D- и 3D-игр в L...
Shadow of the Tomb Raider для Linux Учебное пособие
Shadow of the Tomb Raider - двенадцатое дополнение к серии Tomb Raider - франшизе приключенческой игры, созданной Eidos Montreal. Игра была очень хоро...