- Что такое Docker
- Общие системные требования
- Установка Docker на Ubuntu 22.04
- Установка Docker Compose
Что такое Docker
Docker – это платформа с открытым исходным кодом, которая предназначена для автоматизации развёртывания, масштабирования и управления приложениями с использованием контейнеризации. Контейнеры позволяют разработчикам упаковывать приложения и их зависимости в единый портативный контейнер, который можно запустить на любом сервере с установленным Docker.
Он предлагает множество преимуществ, которые делают его популярным инструментом для разработки и развёртывания приложений. К ним относятся:
- Портативность. Контейнеры Докер могут работать на любом сервере, который поддерживает эту платформу. А потому приложения в контейнерах можно легко переносить между различными средами: например, локальными серверами разработчиков, тестовыми серверами и prod-средами. Это значительно упрощает процессы DevOps и CI/CD, обеспечивая единое окружение для всех этапов разработки.
- Изоляция. Контейнеры изолируют приложения и их зависимости от хостовой системы и других контейнеров. Это позволяет избежать конфликтов между различными версиями библиотек и других зависимостей.
- Лёгкость и производительность. В отличие от виртуальных машин, контейнеры используют ресурсы хостовой операционной системы напрямую, что делает их более лёгкими и менее ресурсоёмкими. Они запускаются быстрее и потребляют меньше памяти и процессорного времени, так как не требуют запуска отдельной операционной системы для каждого контейнера.
- Скорость разработки и развёртывания. Docker упрощает создание, тестирование и развёртывание приложений. Разработчики могут быстро создавать образы, включающие все необходимые зависимости, и тестировать их в среде, идентичной prod. Это ускоряет цикл разработки и уменьшает количество ошибок, которые связаны с различиями в окружении.
- Масштабируемость и управляемость. Docker легко масштабирует приложения, позволяя быстро увеличивать или уменьшать количество контейнеров в зависимости от нагрузки. Инструменты оркестрации, такие как Docker Swarm и Kubernetes, позволяют автоматизировать управление кластерами контейнеров, обеспечивая высокую доступность и надёжность приложений.
- Экономия ресурсов. Контейнеры позволяют более эффективно использовать ресурсы хостовой системы по сравнению с виртуальными машинами. Это достигается за счёт совместного использования ядра операционной системы и отсутствия необходимости в запуске полной операционной системы для каждого контейнера.
Общие системные требования
Для успешной установки Docker Desktop ваш хост на Linux должен соответствовать общим требованиям:
- 64-разрядное ядро и поддержка виртуализации процессором.
- Поддержка виртуализации KVM.
- QEMU версии 5.2 или новее. Рекомендуется обновиться до последней версии.
- Система инициализации systemd.
- Среда рабочего стола Gnome, KDE или MATE.
- Во многих дистрибутивах Linux среда Gnome не поддерживает иконки в области уведомлений. Чтобы это исправить, необходимо установить расширение Gnome (например, AppIndicator).
- Не менее 4 ГБ оперативной памяти.
- Включите настройку сопоставления идентификаторов в пространствах имён пользователей.
Docker предоставляет пакеты .deb и .rpm для следующих дистрибутивов Linux и архитектур:
- Ubuntu (x86_64 / amd64)
- Debian (x86_64 / amd64)
- Red Hat Enterprise Linux (RHEL) (x86_64 / amd64)
- Fedora (x86_64 / amd64)
Установка Docker на Ubuntu 22.04
- Обновите список пакетов и установите обновления:
- Установите пакеты, которые позволят apt использовать репозитории через HTTPS:
- Добавьте официальный GPG-ключ Docker:
- Добавьте репозиторий Docker в список источников apt:
- Обновите список пакетов:
- Убедитесь, что установка будет производиться из репозитория Docker, а не из стандартного репозитория Ubuntu:
Примерный вывод:
Installed: (none)
Candidate: 5:20.10.14~3-0~ubuntu-jammy
Version table:
5:20.10.14~3-0~ubuntu-jammy 500
500 https://download.docker.com/linux/ubuntu jammy/stable amd64 Packages
5:20.10.13~3-0~ubuntu-jammy 500
500 https://download.docker.com/linux/ubuntu jammy/stable amd64 Packages
- Установите Docker:
- Убедитесь, что Docker установлен и работает:
Вывод будет примерно следующий:
● docker.service - Docker Application Container Engine
Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled)
Active: active (running) since Fri 2023-05-24 17:05:12 UTC; 20s ago
TriggeredBy: ● docker.socket
Docs: https://docs.docker.com
Main PID: 7854 (dockerd)
Tasks: 7
Memory: 38.3M
CPU: 340ms
CGroup: /system.slice/docker.service
└─7854 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock
- Добавьте своего пользователя в группу docker, чтобы запускать платформу без прав суперпользователя:
- Чтобы применить изменения, выйдите из системы и войдите снова или выполните команду:
- Убедитесь, что Docker автоматически запускается при старте системы:
Установка Docker Compose
Docker Compose – это инструмент для определения и запуска многоконтейнерных Docker-приложений. Он позволяет описывать конфигурацию всех сервисов, которые необходимы для вашего приложения, в одном YAML-файле.
С помощью Docker Compose вы можете легко управлять сложными приложениями, состоящими из нескольких контейнеров, включая их создание, запуск, остановку и масштабирование.
- Скачайте текущую стабильную версию Docker Compose. Проверьте на странице релизов Docker Compose для получения последней версии.
В нашей инструкции мы будет устанавливать версию 2.27.1:
- Сделайте загруженный файл исполняемым:
- Проверьте установку, запустив команду:
На экране вы должны увидеть версию Docker Compose.
Теперь Docker Compose установлен и настроен на вашем Ubuntu 22.04. Вы можете использовать его для управления многоконтейнерными Docker приложениями, что значительно упростит процесс развёртывания и управления вашими проектами.