Docker приобрел огромную популярность в этом быстро растущем мире информационных технологий. Организации постоянно внедряют Docker в своей производственной среде. Я пользуюсь этой возможностью, чтобы объяснить Docker самым простым способом. В этом блоге будут рассмотрены следующие концепции Docker:
- История до контейнеризации
- Причины использовать контейнеры
- Что такое Докер?
- Dockerfile, изображения и контейнеры
- Докер Составь и Докер Рой
- Руки вверх
Поскольку Docker является платформой контейнеризации, прежде чем я расскажу вам об этом, важно, чтобы вы понимали историю контейнеризации.
Вам также может понравиться:
Докер для начинающих
Docker объяснил: история до контейнеризации
До того, как контейнеризация вошла в картину, основным способом изоляции, организации приложений и их зависимостей было размещение каждого приложения на его собственной виртуальной машине. Эти машины запускают несколько приложений на одном физическом оборудовании, и этот процесс — не что иное, как виртуализация .
Но у виртуализации было мало недостатков, в том числе то, что виртуальные машины были громоздкими по размеру, запуск нескольких виртуальных машин приводил к нестабильной производительности, процесс загрузки обычно занимал много времени, а виртуальные машины не решали бы такие проблемы, как переносимость, обновления программного обеспечения или непрерывная работа. интеграция и непрерывная доставка.
Эти недостатки привели к появлению новой техники под названием контейнеризация.
контейнаризация
Контейнерирование — это тип виртуализации, который выводит виртуализацию на уровень операционной системы. В то время как виртуализация привносит абстракцию в аппаратное обеспечение, контейнеризация привносит абстракцию в операционную систему.
Забегая вперед, пришло время понять причины использования контейнеров.
Причины использования контейнеров
Вот причины использования контейнеров:
- Контейнеры не имеют гостевой ОС и используют операционную систему хоста. Таким образом, они делятся соответствующими библиотеками и ресурсами по мере необходимости.
- Обработка и выполнение приложений очень быстрая, поскольку специфичные для приложений двоичные файлы и библиотеки контейнеров работают на ядре хоста.
- Загрузка контейнера занимает всего доли секунды, а также контейнеры легче и быстрее, чем виртуальные машины.
Теперь, когда вы поняли, что такое контейнеризация и причины использования контейнеров, пришло время понять, что такое Docker?
Docker объяснил: что такое Docker?
Docker — это платформа, которая упаковывает приложение и все его зависимости вместе в форме контейнеров. Этот аспект контейнеризации Docker гарантирует, что приложение работает в любой среде.
Как видно на диаграмме, каждое приложение работает в отдельных контейнерах и имеет свой собственный набор зависимостей и библиотек. Это гарантирует, что каждое приложение не зависит от других приложений, что дает разработчикам уверенность в том, что они могут создавать приложения, которые не будут мешать друг другу.
Таким образом, разработчик может создать контейнер с установленными на нем различными приложениями и передать его команде QA. Тогда команде QA потребуется только запустить контейнер для репликации среды разработчика.
Dockerfile, изображения и контейнеры
Dockerfile, образы Docker и контейнеры Docker — это три важных термина, которые необходимо понимать при использовании Docker.
Как вы можете видеть на диаграмме выше, когда Dockerfile создается, он становится образом Docker, а когда мы запускаем образ Docker, он, наконец, становится контейнером Docker.
-
Dockerfile: Dockerfile — это текстовый документ, содержащий все команды, которые пользователь может вызывать в командной строке для сборки изображения. Таким образом, Docker может создавать изображения автоматически, читая инструкции из Dockerfile. Вы можете использовать
docker build
для создания автоматической сборки, чтобы последовательно выполнить несколько команд командной строки. -
Изображение Docker: с точки зрения непрофессионала, изображение Docker можно сравнить с шаблоном, который используется для создания контейнеров Docker. Таким образом, эти шаблоны только для чтения являются строительными блоками контейнера Docker. Вы можете использовать
docker run
для запуска изображения и создания контейнера. Изображения Docker хранятся в реестре Docker. Это может быть локальный репозиторий пользователя или общедоступный репозиторий, такой как Dockerhub, который позволяет нескольким пользователям совместно создавать приложения. -
Контейнер Docker: Контейнер Docker — это запущенный экземпляр образа Docker, поскольку он содержит весь пакет, необходимый для запуска приложения. Итак, это в основном готовые приложения, созданные из образов Docker, что является конечной утилитой Docker.
Docker объяснил: Docker Compose и Docker Swarm
Docker Compose — это файл YAML, который содержит сведения об услугах, сетях и томах для настройки приложения Docker. Таким образом, вы можете использовать Docker Compose для создания отдельных контейнеров, размещения их и обеспечения их взаимодействия друг с другом. Каждый контейнер будет предоставлять порт для связи с другими контейнерами.
Docker Swarm — это техника для создания и поддержки кластера движков Docker. Механизмы Docker могут быть размещены на разных узлах, и эти узлы, которые находятся в удаленных местах, образуют кластер при подключении в режиме роя.
На этом мы заканчиваем теоретическую часть этого блога Docker Explained, в которой вы, должно быть, поняли все основные термины.
Докер объяснил: практический
Выполните следующие шаги, чтобы создать Dockerfile, изображение и контейнер.
Шаг 1: Сначала вы должны установить Docker.
Шаг 2: После установки Docker используйте следующую команду для проверки версии Docker.
docker -v
Шаг 3: Теперь создайте папку, в которой вы можете создать Dockerfile и изменить текущий рабочий каталог на эту папку.
mkdir images
cd images
Шаг 4.1: Теперь создайте Dockerfile с помощью редактора. В этом случае я использовал нано-редактор.
nano Dockerfile
Шаг 4.2: После того, как вы откроете Dockerfile, вы должны написать Dockerfile следующим образом.
FROM ubuntu:latest
MAINTAINER Sahiti ([email protected])
RUN apt-get update
RUN apt-get install -y nginx
ENTRYPOINT ["/usr/sbin/nginx","-g","daemon off;"]
EXPOSE 80
-
FROM
: Указывает изображение, которое должно быть загружено -
MAINTAINER
: Метаданные владельца, которому принадлежит изображение -
RUN
: Определяет команды, которые будут выполнены -
ENTRYPOINT
: Определяет команду, которая будет выполнена первой -
EXPOSE
: Указывает порт, на котором открыт контейнер
Шаг 4.3. Как только вы закончите с этим, просто сохраните файл.
Шаг 5: Создайте Dockerfile, используя приведенную ниже команду.
docker build
** «.» используется для сборки Dockerfile в текущей папке **
Шаг 6 : После выполнения вышеуказанной команды будет создан соответствующий образ Docker. Чтобы проверить, создано ли изображение Docker, используйте следующую команду.
docker images
Шаг 7 : Теперь, чтобы создать контейнер на основе этого образа, вам нужно выполнить следующую команду:
docker run -it -p port_number -d image_id
Где -it
убедиться, что контейнер является интерактивным, -p
предназначен для переадресации портов и -d
запуска демона в фоновом режиме.
Шаг 8 : Теперь вы можете проверить созданный контейнер, используя следующую команду:
docker ps
На этом мы подошли к концу этой статьи, надеюсь, вам понравился этот блог.