[NIXP] Oracle представила микроконтейнеры и три Open Source-утилиты для них: smith, crashcart, railcar

Обсуждение новостей, соответствующих тематике форума

Модератор: Модераторы разделов

Ответить
Аватара пользователя
Dmitry Shurupov
Сообщения: 336
Статус: Open Source geek
ОС: Ubuntu Linux
Контактная информация:

[NIXP] Oracle представила микроконтейнеры и три Open Source-утилиты для них: smith, crashcart, railcar

Сообщение Dmitry Shurupov »

В конце июня Виш Абрамс (Vish Abrams), архитектор облачного подразделения Oracle, анонсировал открытие исходного трёх своих проектов для контейнеров, используемых в облачных окружениях корпорации: smith, crashcart, railcar. При работе с контейнерами Docker в Oracle выявили ряд проблем (большие образы, превышение привилегий, Overlayfs и др.), обобщённое решение которых привело к созданию новой концепции под названием «микроконтейнеры» (см. Microcontainer Manifesto). Как подчёркивают в Oracle, эта концепция не приносит новый формат контейнеров, потому что она о методе создания контейнеров, который призван сделать их более безопасными и стабильными. Особенности микроконтейнера Oracle таковы:


  • содержит единственный исполняемый файл и его зависимости (нет shell’а, нет процесса init);
  • корневая файловая система — в режиме только для чтения (записи изолированы и обслуживаются примонтированными томами);
  • у файловой системы нет пользователя или группы-владельца (всем владеет единственный пользователь, у него есть доступ на чтение всего);
  • отключены timestamps и capabilities для файловой системы;
  • сборка воспроизводится и каждый раз создаёт только такой же образ.

Для работы с такими контейнерами — микроконтейнерами Oracle — и предназначены утилиты, исходный код которых был открыт:


  • smith — написанная на Go утилита для сборки микроконтейнеров из пакетов RPM (и репозиториев yum) или готовых контейнеров Docker, результатом становится образ в формате OCI (Open Container Initiative), а также поддерживается работа с образами из репозиториев Docker;
  • crashcart — написанная на Rust утилита для загрузки (sideload) в существующий контейнер образа с Linux-приложениями (бинарными файлами) для отладки приложения внутри контейнера;
  • railcar — написанная на Rust реализация спецификации исполняемой среды контейнера (oci-runtime), т.е. аналог эталонного решения runC, но позиционируемый авторами как более безопасный.

Исходный код всех проектов распространяется под двумя Open Source-лицензиями: Universal Permissive License 1.0 и Apache License 2.0.
По-моему, это еще один повод перейти на Убунту.
Спасибо сказали:
Ответить