Ви шукаєте альтернативу Docker із повністю відкритим вихідним кодом і без блокування від постачальника? Що ж, є чотири інструменти, які ви можете використовувати, які повністю вільні від впливу Docker.
Кожен інструмент має свої плюси та мінуси, але завдяки спільноті з відкритим кодом та Open Container Initiative (OCI) ви все одно матимете великий пул контейнерів для використання навіть без прямої інтеграції Docker.
Підкорений
Podman, мабуть, одна з найкращих замін Docker. Загальний досвід дуже схожий на Docker на верхньому рівні, але ядро Podman дуже відрізняється. Він використовує libpod замість контейнера, і немає жодної фонової служби, як dockerd, яка має працювати, щоб Podman працював.
Завдяки Podman ви знайдете простий у користуванні інтерфейс користувача, який містить усе, що вам потрібно, на перший план. Ви зможете створювати власні контейнери, завантажувати контейнери від інших і з легкістю керувати запущеними контейнерами. Podman працює з більшістю існуючих контейнерів, оскільки він OCI-сумісний, і ви навіть можете запускати сценарії Docker Compose для додаткової універсальності. Ви також зможете використовувати Podman в існуючих розгортаннях Kubernetes, що робить його ще кориснішим.
Контейнери Podman працюють без коренів і містять привілеї для кожного окремого контейнера для додаткової безпеки. Ще кілька помітних особливостей Podman полягає в тому, що він офіційно підтримується Visual Studio Code та GitHub Actions.
Podman є абсолютно безкоштовним і відкритим кодом, що робить його фантастичною альтернативою Docker, якщо ви шукаєте щось інше для використання.
- ОС
-
macOS, Windows, Linux
- Бренд
-
Підкорений
Podman — це безкоштовна платформа керування контейнерами з відкритим кодом, створена на libpod. Це альтернатива Docker та іншим контейнерним системам, що дозволяє запускати безкореневі та контейнерні програми у вашій системі.
Контейнер + Nerdctl
Якщо вам не потрібен повний графічний інтерфейс користувача, вибір контейнерів і nerdctl стане чудовою альтернативою Docker. Насправді контейнер є серверною частиною Docker, що робить його дуже знайомим, якщо ви вже звикли користуватися Docker. Nerdctl замінює Docker-CLI, переносячи знайомі команди в повністю відкритий стандарт.
Сполучення container і nerdctl дає вам досвід роботи Docker лише з CLI, з чого, зрештою, і почався Docker. Звичайно, так само як Docker і Podman, container і nerdctl сумісні з OCI і можуть використовувати більшість існуючих контейнерів, які ви знайдете. Це налаштування також дозволить вам створювати власні контейнери, якщо хочете.
Головне, про що слід пам’ятати, вибираючи цей шлях, це те, що ви будете жити в командному рядку. Однак ви матимете повнофункціональний досвід, подібний до Docker, із підтримкою Docker Compose та додатковим безкореневим режимом, якщо це те, що вам потрібно.
Якщо ви прагнете повністю замінити Docker на основі командного рядка, тоді ви не зможете отримати набагато краще, ніж container і nerdctl.
Робочий стіл Rancher
Тепер, якщо ви хочете використовувати containerd і nerdctl, але все ще мати графічний інтерфейс користувача, тоді Rancher Desktop – це саме те, що вам потрібно. Розроблений компанією SUSE, тією ж командою, що стоїть за openSUSE, Rancher Desktop надає досвід роботи з робочим столом Docker, але без механізму Docker.
Сумісний із macOS (як Apple Silicon, так і Intel), Windows і Linux, Rancher Desktop дозволяє з легкістю створювати, перетягувати та штовхати контейнери. Це також повна система управління для керування наявними та запущеними контейнерами.
Звичайно, оскільки Rancher Desktop використовує container і nerdctl, у вашому розпорядженні також буде повний набір інструментів командного рядка, запропонований цими службами. Оскільки Rancher Desktop використовує containerd і nerdctl, він сумісний з усіма OCI-сумісними контейнерами, а також багатьма контейнерами Docker.
Для тих, хто не хоче використовувати Podman, але також не хоче використовувати Docker, Rancher Desktop пропонує найкращий досвід настільного класу, щоб позбавити вас від терміналу для керування контейнерами.
- ОС
-
macOS, Linux, Windows
- Бренд
-
власник ранчо
Rancher Desktop — це безкоштовна платформа керування контейнерами з відкритим вихідним кодом, створена на основі container і nerdctl. Це альтернатива Docker та іншим контейнерним системам, що дозволяє запускати безкореневі та контейнерні програми у вашій системі.
LXC
Хоча LXC (скорочення від Linux Containers) не обов’язково є повноцінною заміною Docker, багато людей дивляться на LXC для роботи з контейнерними програмами. Контейнер Linux більше схожий на легку віртуальну машину, ніж на традиційний контейнер додатків, який можна знайти в Docker, containerd або Podman.
Контейнери Linux взаємодіють безпосередньо з ядром вашої системи, і ви не будете покладатися на зображення для їх роботи. Натомість у вас буде набагато більше контролю, ніж у Docker, Podman або контейнерів. Це відбувається за рахунок того, що він не такий легкий, як контейнер, але контейнер Linux безперечно легший, ніж повноцінна віртуальна машина.
Ви побачите, що контейнери Linux можуть бути чудовим місцем для запуску таких речей, як Plex, ізольованого середовища розробки Linux або будь-чого, що потребує функціональності systemd. Контейнери Linux інколи можуть бути дещо громіздкішими для налаштування, особливо тому, що може знадобитися більше конфігурації та обслуговування. Якщо ви хочете відійти від Docker і не є прихильником традиційних контейнерів, контейнери Linux можуть стати чудовим вибором.
Оскільки всі контейнери, окрім LXC, уже підтримують майже всі наявні контейнери Docker завдяки Open Container Initiative, перегляньте мої улюблені контейнери Docker, які, на мою думку, повинен запускати кожен домашній лаборант. Кожен контейнер має чудово працювати як у контейнері, так і в Podman, що робить список чудовим ресурсом, навіть якщо ви не використовуєте Docker безпосередньо.