Подумываете о переходе на что-то открытое, что не привязывает вас к одному поставщику? Я нашёл четыре отличные замены Docker — все они полностью бесплатны и не зависят от оригинального Docker.
У каждого из этих инструментов есть свои сильные и слабые стороны, но благодаря энтузиастам open source и стандарту Open Container Initiative (OCI) привычное разнообразие контейнеров доступно и без Docker.
Podman
Podman — пожалуй, лучший выбор среди альтернатив Docker прямо сейчас. На первый взгляд он похож на Docker, но устроен по-другому: работает на базе libpod и не требует запуска отдельного фонового сервиса, как dockerd.
Самое приятное — интуитивный интерфейс Podman. Все нужные вам функции на виду: можно легко создавать собственные контейнеры, скачивать образы и управлять запущенными приложениями. Благодаря поддержке стандарта OCI большинство контейнеров работает "из коробки", а при необходимости даже Docker Compose-приложения можно запускать, что даёт гибкость в работе. Отлично вписывается и в существующие Kubernetes-кластеры.
Отдельно отмечу безопасность: контейнеры Podman можно запускать без root-доступа, и этим они уже выигрывают. Плюс поддержка в Visual Studio Code и GitHub Actions — очень удобно.
Podman полностью бесплатен и с открытым кодом. Если хочется поменять Docker на что-то современное и гибкое — точно попробуйте Podman.
Podman
Podman — бесплатная система для управления контейнерами на базе libpod, позволяющая запускать приложения в изоляции без root-прав. Настоящий конкурент Docker!
Containerd Nerdctl
Если графика вам не важна и привычнее работать в терминале, попробуйте связку containerd и nerdctl. По сути, containerd — это тот же движок, что стоит внутри Docker, так что переход будет простым, если вы уже привыкли к Docker. Nerdctl — это полноценная замена командной строки Docker, только на полностью открытом стекe.
Вместе containerd и nerdctl дают всё то, за что мы полюбили работу с Docker через консоль. Как и Docker или Podman, здесь поддерживается стандарт OCI, так что можно запускать практически любые контейнеры из сети, а при необходимости и собирать собственные образы.
Главная особенность — вся работа идёт в терминале, без графических окон. Docker Compose поддерживается, работать можно и без root-прав — удобно для продвинутых пользователей.
Если вы ищете альтернативу Docker для управления контейнерами из командной строки — связка containerd и nerdctl не оставит равнодушным.
Rancher Desktop
А если вы предпочитаете containerd с nerdctl, но не хотите отказываться от полноценного интерфейса, обратите внимание на Rancher Desktop. Эту платформу делает команда SUSE (те самые, что стоят за openSUSE), и она полностью повторяет удобство использования Docker Desktop, только без зависимостей от Docker-движка.
Rancher Desktop работает на macOS (и Intel, и ARM), Windows и Linux, делая сборку, загрузку и управление контейнерами простой и быстрой задачей. Контейнеры можно запускать и останавливать прямо из графического интерфейса.
Поскольку Rancher Desktop основан на containerd и nerdctl, вы получаете и удобную графическую оболочку, и весь привычный набор команд для работы в консоли. Совместимость со стандартом OCI и большинство Docker-образов поддерживаются без проблем.
Если Podman и Docker не подходят, а хочется максимально простой работы с контейнерами на компьютере — Rancher Desktop вас приятно удивит. Здесь всё просто, современно и никакой привязки к консоли.
Rancher Desktop
Rancher Desktop — бесплатная и полностью открытая платформа для управления контейнерами на основе containerd и nerdctl. Отличная альтернатива Docker для запуска изолированных приложений на компьютере.
LXC
Хотя LXC (Linux Containers) не копирует Docker один в один, этот инструмент часто выбирают для запуска контейнеризированных приложений. По сути, Linux-контейнеры — это скорее легкие виртуальные машины, чем классические контейнеры, которые предлагают Docker, containerd или Podman.
LXC напрямую работает с ядром Linux, и для запуска контейнера не нужно создавать отдельный образ. Это даёт большой контроль над настройками и ресурсами — гораздо больше, чем у Docker или Podman. Да, LXC чуть тяжелее типичных контейнеров, но всё равно проще и легче полноценной виртуалки.
LXC особенно хорош для задач вроде запуска медиасерверов (например, Plex), изолированных Linux-сред для разработки или работы с systemd. Правда, разобраться с его настройкой бывает сложнее: часто приходится всё конфигурировать вручную и самому поддерживать контейнеры в рабочем состоянии. Но если хочется отойти от Docker и получить больший контроль, LXC определённо стоит попробовать.
К слову, все упомянутые здесь платформы, кроме LXC, уже поддерживают почти все контейнеры для Docker — это возможно благодаря стандарту Open Container Initiative. Советую взглянуть на свои самые полезные контейнеры: их можно запускать не только в Docker, но и через containerd или Podman — никакой зависимости от одной системы!
Если вам понравилась эта статья, подпишитесь, чтобы не пропустить еще много полезных статей!
Премиум подписка - это доступ к эксклюзивным материалам, чтение канала без рекламы, возможность предлагать темы для статей и даже заказывать индивидуальные обзоры/исследования по своим запросам!Подробнее о том, какие преимущества вы получите с премиум подпиской, можно узнать здесь
Также подписывайтесь на нас в:
- Telegram: https://t.me/gergenshin
- Youtube: https://www.youtube.com/@gergenshin
- Яндекс Дзен: https://dzen.ru/gergen
- Официальный сайт: https://www-genshin.ru