Docker: краткое введение.
Узнайте о контейнерах Docker, образах, установках и обо всем, что вам нужно знать о Docker.
О Docker :
Docker — это платформа контейнеризации с открытым исходным кодом. Она позволяет разработчикам упаковывать приложения в контейнеры — стандартизированные исполняемые компоненты, объединяющие исходный код приложения с библиотеками операционной системы (ОС) и зависимостями, необходимыми для запуска этого кода в любой среде. IBM
Простыми словами
Docker — это инструмент для сборки и развертывания приложений. В его основе лежит идея о том, что вы можете упаковать свой код с зависимостями в развертываемый блок, называемый контейнером. Контейнеры существуют уже довольно давно. nebula работает
В двух словах
Вы сталкиваетесь с такой ситуацией: код отлично работает на моей машине, но не работает на других машинах.
Ситуация, когда вы отправили код на производство, а он не работает, но отлично работает на вашей машине.
Именно здесь Docker может стать спасителем для вас и вашего кода,
Он просто создает контейнер для файлов вашего проекта, каталогов, инструментов и всего, что нужно вашему коду, и этот контейнер может быть использован и прекрасно работать в любой системе или машине (на вашей машине или на облачном хосте).
Зачем использовать Docker:
-
Решить головную боль «**Это работает на моей машине…!!!»
** благодаря тому, что код находится в контейнере, он может быть запущен везде. -
хорошее решение для проектов с архитектурой микросервисов
превратите каждый сервис вашего продукта в простой контейнер docker
Контейнеры не обязательны для реализации микросервисов, но они отлично подходят для микросервисного подхода и agile-процессов разработки в целом. -
Docker позволяет ускорить циклы поставки программного обеспечения
делает процесс CI/CD плавным и легким.Корпоративное программное обеспечение должно быстро реагировать на изменяющиеся условия. Это означает как простое масштабирование для удовлетворения спроса, так и простое обновление для добавления новых функций, как того требует бизнес.
Контейнеры Docker позволяют быстро внедрять в производство новые версии программного обеспечения с новыми бизнес-функциями, а при необходимости быстро откатываться к предыдущей версии. Они также облегчают реализацию таких стратегий, как «синее/зеленое» развертывание.
Основные концепции:
Давайте немного погрузимся в docker и узнаем, как он работает под капотом и каковы его компоненты.
Контейнеры:
Образ контейнера Docker — это легкий, автономный, исполняемый пакет программного обеспечения, который включает все необходимое для запуска приложения: код, время выполнения, системные инструменты, системные библиотеки и настройки.
Кроме того, контейнер — это запускаемый экземпляр образа. Вы можете создать, запустить, остановить, переместить или удалить контейнер с помощью Docker API или CLI.
Образ:
Образ Docker — это файл, используемый для выполнения кода в контейнере Docker. Образы Docker действуют как набор инструкций для создания контейнера Docker, подобно шаблону. Образы Docker также служат отправной точкой при использовании Docker. Образ можно сравнить с моментальным снимком в среде виртуальных машин (VM).
DockerFile:
DockerFile — это текстовый файл, содержащий инструкции по созданию образа Docker. В Dockerfile указывается операционная система, которая будет лежать в основе контейнера, а также языки, переменные окружения, расположение файлов, сетевые порты и другие необходимые компоненты — а также то, что будет делать контейнер после его запуска.
Процесс контейнеризации вашего кода:
процесс превращения вашего кода в контейнер docker, который может работать везде, называется контейнеризацией.
Контейнеризация — это виртуализация на базе ОС, которая создает несколько виртуальных единиц в пользовательском пространстве, известных как контейнеры. Контейнеры используют одно и то же ядро хоста, но изолированы друг от друга с помощью частных пространств имен и механизмов контроля ресурсов на уровне ОС. geeksforgeeks
Контейнеризация — это подход к разработке программного обеспечения, при котором приложение или сервис, его зависимости и конфигурация (абстрагированные в виде файлов манифеста развертывания) упаковываются вместе в образ контейнера. Контейнеризированное приложение может быть протестировано как единое целое и развернуто как экземпляр образа контейнера на операционной системе (ОС) хоста. microsoft docs
сложно понять? простыми словами контейнеризация — это просто подход к сбору всех файлов, инструментов и конфигураций, необходимых вашему проекту, в одном месте, в контейнере, а затем вы можете запускать, развертывать, тестировать и удалять свой контейнер так, как вам нужно, с любой машины, поддерживающей docker
вы поставляете свой код и все, что ему нужно, в контейнере, выполняете код внутри этого контейнера с помощью образа docker, а файл Doker будет содержать серию инструкций, указывающих, как собрать образ docker.
Это не совсем то, как все работает, но я надеюсь, что вы уловили основную идею!
Установка:
чтобы установить docker на вашей машине, прочитайте эту документацию на docker.com
Получить Docker
на Linux:
Установить Docker Desktop на Linux
на macOS:
Установить Docker Desktop на Mac
на Windows:
Установить Docker Desktop на Windows
Ресурсы:
Что такое Docker? | AWS
Самоучитель по Docker: Начало работы с нуля
Почему вы должны использовать Docker — 7 основных причин! — GeeksforGeeks
Docker против Kubernetes :
Kubernetes vs. Docker: В чем разница?
Kubernetes vs Docker: В чем разница?
Kubernetes vs Docker | Microsoft Azure
Kubernetes vs Docker | Sumo Logic
Ссылки
Главная — Docker
Что такое Docker?
Библиотека образов контейнеров Docker Hub | Контейнеризация приложений
Спасибо за чтение, и не стесняйтесь задавать любые вопросы о javascript или этой серии, я ценю любую обратную связь для улучшения моего контента.
Найдите меня на Twitter, Github и в моем портфолио.