Docker что это Youtube

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

1. Docker облегчает упаковку

Традиционная методология развертывания включает в себя отправку артефакта приложения на сервер, а затем его запуск. Это также включает установку любых библиотек и файловой структуры, которые требуются приложению.

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

What Is Docker? | What Is Docker And How It Works? | Docker Tutorial For Beginners | Simplilearn

2. Образы Docker создаются один раз и запускаются где угодно

Образы Docker создаются один раз и запускаются где угодно. Или, точнее, везде, где вы можете запустить Docker.

Это делает развертывание более предсказуемым, поскольку один и тот же образ развертывается в ваших производственных и тестовых средах. Это исключает любые неожиданности из уравнения, поскольку мы можем быть уверены, что приложение и его зависимости будут развернуты одинаково.

3. Изображения Docker являются расширяемыми

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

В качестве примера, скажем, мы хотели использовать популярный облегченный дистрибутив Linux Alpine Linux, чтобы запустить команду curl для получения определенного URL. По умолчанию Alpine Linux не содержит curl , но мы можем легко расширить изображение, чтобы добавить его, например, так:

FROM alpine RUN apk add curl

Если бы мы создали и запустили этот образ, мы получили бы всю функциональность Alpine Linux с добавлением curl .

4. Самые популярные приложения уже доступны в Docker

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

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

Взять, к примеру, популярную технологию баз данных Postgres. Все, что вам нужно сделать, это запустить, docker run postgres и у вас есть экземпляр Postgres, готовый для подключения вашего приложения.

Еще по теме:  Почему в ютубе вместо ников набор букв и цифр

Что такое Docker?

5. Контейнеры Docker — это . контейнеры

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

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

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

6. Совместное использование образов Docker легко с реестром Docker

Docker Registry — это сервис, который используется для распространения образов Docker. Это похоже на то, что Maven Central относится к артефактам Maven. Один из самых известных реестров Docker — Docker Hub , где вы можете найти все виды общедоступных изображений. Некоторые альтернативы включают в себя:

  1. Реестр контейнеров Google
  2. Amazon Elastic Container Registry
  3. JFrog Artifactory

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

7. Docker контейнеры делают среду разработки больше похожей на производство

Привет, Докер! Создание очень простого локального образа Docker

В этой статье я покажу вам, как создать и запустить образ Docker на вашем локальном компьютере менее чем за 10 минут. Я подробно объясню Docker File, но предполагаю, что у вас есть опыт использования node и js.

Почему Докер

Прежде чем мы перейдем к кодированию, я хочу объяснить, почему Docker — такой классный и мощный инструмент для использования. Мой ответ на этот вопрос (хотя есть множество других) — Контейнеры! Я не могу сказать вам, сколько раз я создавал какой-то скрипт или приложение, которое отлично работает в моей локальной среде, только для того, чтобы затем оно сломалось в размещенной настройке или когда кто-то другой с другой версией узла, python env и т. д. пытается запустить его . С контейнерами вы можете быть уверены, что ваш код и зависимости изолированы от среды выполнения вашего контейнера, также вы можете запускать контейнеры практически где угодно, и они могут быть такими быстрыми и легкими, как вы хотите, поскольку вы можете выбрать, с какого базового образа начать (или создать). свое собственное, если вы смелы).

Короче говоря, контейнеры Docker — это отличный способ изолировать, протестировать и развернуть ваш код быстрым и масштабируемым образом, а с принятием Kubernetes для управления контейнерами они быстро становятся обязательными для любого нового разработчика.

Прохождение

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

Установить рабочий стол Docker

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

Создайте наше экспресс-приложение

Введение в Docker для начинающих

Введение в Docker для начинающих

Я помню свой третий demo-проект. После сборки и тестирования проекта всё работало. В тот момент я отправил его человеку, который должен был демонстрировать его вместо меня. И вот, не задача, во время запуска возникла ошибка…

“Но он же работал на моём компьютере!”

Введение в Docker для начинающих

Чтобы сохранить собственную репутацию, я начал производить отладку. Проект не запускался потому, что тому человеку нужно было обновить программное обеспечение, чтобы у него работали новые функции. Я помог ему в этом, и, о чудо, всё заработало!

Еще по теме:  Как изменить разрешение в Ютубе

А теперь представьте, если бы мне нужно было разослать данный проект не одному человеку, а десятерым. Тогда мне пришлось бы помогать каждому, перенастраивать их компьютеры, чтобы новые функции успешно работали. Думаю, я бы испытал огромный стресс…

Было бы отлично, если бы существовало такое ПО, с помощью которого можно было бы упаковать всё необходимое для работы приложения в одном месте, а потом поделиться этим файлов с коллегами. Они бы скачивали файл и запускали его, при этом не получая ошибку. Но ведь такая программа существует! И называется она Docker.

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

Что такое контейнеры?

Контейнер – это воображаемая коробка, содержащая в себе всё необходимое для запуска вашего проекта. Например:

  • исходный код проекта
  • зависимости проекта
  • файл конфигурации
  • настройка базы данных
  • среда выполнения и т.д.

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

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

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

Образ Docker

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

Образ Docker определяет структуру контейнера. Он служит шаблоном или планом для создания контейнера. С помощью одного образа Docker вы можете создать множество контейнеров для своего проекта.

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

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

Самый популярный способ создания образа Docker — через Dockerfile.

Dockerfile

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

Вот пример Dockerfile. Он предназначен для Java-приложения:

Введение в Docker для начинающих

Сейчас я объясню, что делает оператор в каждой строке

Строка 1 : FROM openjdk:11

Каждый образ Docker создаётся на основе существующего образа. Этот существующий образ называется базовым образом. Им может являться:

  • изображение среды выполнения
  • образ операционной системы

Первая строка каждого Dockerfile должна указывать на базовый образ.

Синтаксис для указания базового образа:

FROM :

Docker извлечёт этот образ из реестра, когда попытается создать ваш образ. Реестр докеров похож на GitHub. Это репозиторий образов. Наиболее часто используемым реестром докеров является Docker Hub.

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

tag указывает версию вашего базового образа. В приведённом выше примере используется tag для java 11. Вы можете указать базовое изображение без столбца и tag . Если вы не укажете tag , Docker загрузит последнюю версию базового образа.

Строка 2: ADD target/*.jar app.jar

Контейнер содержит всё необходимое для запуска приложения. Итак, чтобы создать контейнер, вам нужно скопировать всё, что нужно для запуска приложения, в образ Docker. Это делается с помощью команды ADD или COPY. В приведённом выше примере используется команда ADD.

Еще по теме:  Vp9 или avc Youtube что лучше

Приведённый выше пример относится к java-приложению. Таким образом, всё необходимое для запуска приложения уже упаковано в файл .jar. Вам просто нужно скопировать файл .jar в контейнер.

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

Введение в Docker для начинающих

В этом примере проекта вам нужен как исходный код, так и его зависимости для запуска приложения. Строка 2 создаёт новый каталог. Строка 3 копирует исходный код в новый каталог. Затем строка 4 устанавливает зависимости в контейнер.

Строка 3: ENTRYPOINT [“java”,”-jar”,”/calculator.jar”]

Каждый файл Докера должен включать команду, которая будет выполняться при запуске контейнера. Эта команда обычно используется для запуска вашего приложения. Для java-приложений обычно используется команда java -jar appname.jar. Она указывается с помощью ENTRYPOINT или CMD. Каждый Docker должен иметь команду точки входа или команду CMD.

Когда ваш Dockerfile будет готов, вы можете поместить свой проект в контейнер.

Как контейнизировать ваше приложение?

Введение в Docker для начинающих

Шаг 1: Создайте своё приложение

Шаг 2: Загрузите и установите Docker

Шаг 3. Создайте образ Docker

Чтобы создать образ Docker, вам понадобится Dockerfile. В корневом каталоге вашего проекта создайте новый файл с именем «Dockerfile». Определите структуру вашего образа в файле, а затем запустите команду сборки Докера.

Введение в Docker для начинающих

  • -t используется для присвоения изображению имени и тега.
  • В идеале ваш Dockerfile должен находиться в корневом каталоге вашего проекта. Поэтому, чтобы указать его путь, используйте « . » .

Ваша первая сборка может занять некоторое время. Это связано с тем, что Докеру придётся загрузить базовый образ из Docker Hub. Эта загрузка происходит только один раз. Следующие сборки будут быстрее.

После создания образа вам нужно запустить контейнер.

Шаг 4: Запустите ваш контейнер

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

Введение в Docker для начинающих

Используйте —name для того, чтобы дать имя вашему контейнеру.

Команда запуска Docker создаёт новый контейнер из образа. Если вы не укажете имя для своего контейнера, Docker присвоит ему случайное имя.

После того, как вы выполните команду запуска, вы должны увидеть, как ваш проект работает в терминале.

Каждый раз, когда вы используете команду запуска Docker, Docker создаёт новый контейнер.

  • Чтобы перезапустить существующий контейнер, запустите docker start containerName
  • Чтобы остановить работающий контейнер, запустите docker stop contanierName
  • Чтобы проверить список запущенных контейнеров, запустите docker ps
  • Чтобы получить все контейнеры, как запущенные, так и неработающие, запустите docker ps -a .

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

Поделитесь вашим Docker-образом

Вы можете поделиться своим образом Docker, отправив коллегам Dockerfile. Когда они получат его, они будут запускать соответствующие команды сборки Докера, чтобы запустить образ.

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

Заключение

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

Чтобы создать контейнер для своего проекта, используйте Dockerfile для создания образа. Этот образ должен содержать всё необходимое для запуска вашего проекта. Затем используйте образ, чтобы создать столько контейнеров, сколько хотите.

Надеюсь, вы нашли прочтение данной статьи полезным!

Источник: uproger.com

Рейтинг
( Пока оценок нет )
Загрузка ...