Docker - это платформа для автоматизации развёртывания, масштабирования и управления контейнеризированными приложениями. Она позволяет разработчикам создавать, тестировать и разворачивать приложения в изолированных средах, называемых контейнерами.
🚩Основные компоненты Docker
🟠Docker Engine
Это серверное ПО, которое запускает и управляет контейнерами. Состоит из двух частей:
Docker Daemon: Служба, которая управляет всеми объектами Docker (контейнерами, образами и т.д.).
Docker CLI: Командная строка, через которую пользователи взаимодействуют с Docker Daemon.
🟠Образы (Images)
Это шаблоны для создания контейнеров. Образ включает в себя все зависимости, библиотеки, конфигурационные файлы, скрипты и код, необходимый для запуска приложения.
🟠Контейнеры (Containers)
Это изолированные среды, в которых выполняются приложения. Контейнеры создаются на основе образов и содержат всё необходимое для работы приложения.
🟠Docker Hub
Это облачный сервис для хранения и распределения Docker-образов. Разработчики могут загружать свои образы в Docker Hub и делиться ими с другими пользователями.
🟠Docker Compose
Это инструмент для определения и управления многоконтейнерными Docker-приложениями. С помощью файла
docker-compose.yml можно описать конфигурацию всех контейнеров, сетей и томов, необходимых для работы приложения.🚩Плюсы
➕Изоляция
Каждый контейнер работает в своей собственной изолированной среде, что предотвращает конфликты между приложениями.
➕Портативность
Образы Docker могут работать на любом сервере с установленным Docker, независимо от операционной системы.
➕Масштабируемость
Контейнеры можно легко масштабировать в зависимости от нагрузки.
➕Быстрое развёртывание
Контейнеры запускаются гораздо быстрее, чем виртуальные машины.
➕Упрощение CI/CD
Docker интегрируется с системами непрерывной интеграции и доставки, упрощая процессы разработки и развёртывания.
🚩Основные команды
docker build: Создание образа из Dockerfile.
docker run: Запуск нового контейнера из образа.
docker ps: Список запущенных контейнеров.
docker stop: Остановка работающего контейнера.
docker rm: Удаление остановленного контейнера.
docker pull: Загрузка образа из Docker Hub.
docker push: Загрузка образа в Docker Hub.
Ставь 👍 и забирай 📚 Базу знаний