Статьи

Как начать пользоваться Docker?

Docker#nbsp;— один из#nbsp;инструментов, широко использующийся при разработке ПО, который у#nbsp;всех на#nbsp;слуху. Но#nbsp;как понять, зачем он#nbsp;и#nbsp;начать им#nbsp;пользоваться? Постараемся ответить на#nbsp;эти вопросы.

Итак, Docker#nbsp;— программное обеспечение для автоматизации развёртывания и#nbsp;управления приложениями в#nbsp;средах с#nbsp;поддержкой контейнеризации, контейнеризатор приложений. Если говорить более простым языком, то#nbsp;это песочница, позволяющая разворачивать любые приложения внутри себя на#nbsp;целевой операционной системе, и#nbsp;отличная альтернатива использованию множества#nbsp;ВМ. Докер позволяет упаковать приложение со#nbsp;всеми его зависимостями в#nbsp;контейнер и#nbsp;использовать все преимущества изолированной ОС, при этом затрачивать значительно меньше ресурсов, чем в#nbsp;сценарии с#nbsp;классической виртуалкой. Технология контейнеров существовала и#nbsp;ранее, но#nbsp;с#nbsp;появлением такого#nbsp;ПО как Docker, её#nbsp;использование стало по-настоящему удобным и#nbsp;популярным.

Как это может пригодиться разработчику? Docker#nbsp;— сложная тема и#nbsp;в#nbsp;этом посте мы#nbsp;не#nbsp;будем затрагивать применение контейнеризации в#nbsp;контексте DevOps, приведем пример из#nbsp;жизни среднестатистического разработчика. Ну, например, вы#nbsp;пишете RESTful приложение с#nbsp;PostgreSQL базой данных, вам нужно локально запустить приложение, а#nbsp;БД должна быть где-то задеплоена. И#nbsp;в#nbsp;этом случае вы, конечно, можете создать на#nbsp;своем устройстве ВМ, развернуть полноценный Linux сервер с#nbsp;постгресом на#nbsp;локалхосте, только зачем? На#nbsp;помощь приходит Docker, который позволяет с#nbsp;помощью одного файла запустить на#nbsp;машине контейнер с#nbsp;БД и#nbsp;сделать это в#nbsp;разы быстрее. Контейнер удобно очищать от#nbsp;тестовых данных, редактировать, пересоздавать и#nbsp;это не#nbsp;отнимает много времени и#nbsp;ресурсов. Если говорить о#nbsp;современных Python-приложениях, то#nbsp;их#nbsp;архитектура, зачастую, подразумевает взаимодействие множества инстансов (контейнеров) между собой. Представьте, если#nbsp;бы это были вирутальные машины. Создать 5−10 изолированных Linux систем на#nbsp;одном#nbsp;ПК? Удачи

Теперь, когда вы#nbsp;убеждены, что использования Docker не#nbsp;избежать, перейдем к#nbsp;инструкции по#nbsp;установке и#nbsp;пользованию:

1. Необходимо установить#nbsp;ПО Docker на#nbsp;вашу систему.

Инструкции#nbsp;— Mac (https://docs.docker.com/desktop/install/mac-install/), Linux (https://docs.docker.com/desktop/install/linux-install/), Windows (https://docs.docker.com/desktop/install/windows-install/).

2. Запустить Docker.

3. Развернуть контейнеры с#nbsp;требуемой конфигурацией посредством использования Dockerfile (https://doka.guide/tools/dockerfile/) или docker-compose (https://learn.microsoft.com/ru-ru/azure/cognitive-services/containers/docker-compose-recipe). Отличие в#nbsp;том, что Dockerfile используется для создания и#nbsp;настройки индивидуальных контейнеров, в#nbsp;то#nbsp;время как docker-compose используется для управления и#nbsp;запуска многоконтейнерных приложений.

Конечно, Docker это очень обширная тема, но#nbsp;для того чтобы начать пользоваться (https://docs.docker.com/get-started/), достаточно выполнить инструкцию из#nbsp;3-х пунктов. Совсем несложно.

С#nbsp;помощью такого инструмента как Docker вы#nbsp;можете получить на#nbsp;своем#nbsp;ПК тестовый инстанс базы данных, identity-провайдера, брокера сообщений и#nbsp;любого другого приложения. Сделать это получится быстро и#nbsp;удобно, что открывает перед разработчиком возможности воссоздавать локально необходимую инфраструктуру приложения и#nbsp;тестировать его работу еще до#nbsp;совершения коммитов в#nbsp;репозиторий. Вся документация есть на#nbsp;сайте docs.docker.com. Пользуйтесь!
2024-01-10 12:51 Профильные статьи