SingularityCE — сообщественная (Community Edition) версия контейнерной платформы Singularity, предназначенная для запуска контейнеризованных приложений в научных, исследовательских и высокопроизводительных вычислительных (HPC) средах. Платформа ориентирована на обеспечение совместимости с пользовательскими рабочими процессами исследователей, воспроизводимости вычислений и интеграции с кластерами, где традиционные системы контейнеризации с демоном (например, Docker) либо недопустимы, либо затруднены в использовании по соображениям безопасности и администрирования. SingularityCE развивает идеи оригинального проекта, сохраняя поддержку единых файлов-образов контейнеров, подписей и механизмов шифрования для защиты целостности и конфиденциальности образов.
Разработка и документация SingularityCE ведутся в открытом сообществе; проект сосредоточен на простоте запуска контейнеров от имени обычного пользователя без необходимости повышенных привилегий, на совместимости с существующей инфраструктурой HPC и на поддержке стандартных форматов образов. В случае ограниченной или меняющейся информации о конкретных релизных особенностях SingularityCE, описание ниже отражает типичные возможности и сценарии применения таких сообществных версий платформы Singularity, исходя из общедоступных сведений о семействах контейнерных решений для науки и HPC.
- Файловый образ SIF — единый переносимый образ контейнера, содержащий файловую систему, метаданные и подписи для удобного распространения и воспроизводимости.
- Запуск без демона — выполнение контейнеров от имени пользователя без фонового демона, что упрощает интеграцию с HPC-кластерами и снижает требования к привилегиям.
- Безопасность и подписи — поддержка цифровой подписи образов для проверки целостности и происхождения перед запуском.
- Шифрование образов — возможность шифрования содержимого образов для защиты конфиденциальных данных при хранении и передаче.
- Интеграция с ресурсными менеджерами — совместимость с системами планирования заданий и менеджерами очередей, распространёнными в научных центрах и суперкомпьютерах.
- Совместимость с OCI-образами — поддержка конвертации или использования образов в формате Open Container Initiative (OCI) для облегчения переноса рабочих окружений.
- Воспроизводимость окружений — механизмы для фиксирования зависимостей и окружения выполнения, что способствует воспроизводимости вычислений и экспериментов.
- Инструменты сборки — утилиты и форматы описания для создания образов из рецептов, Dockerfile-подобных файлов или существующих контейнеров.
- Масштабируемость — оптимизация для запуска на многопользовательских кластерах и в распределённых вычислительных средах.
- Открытый исходный код — развитие и поддержка сообществом, доступность кода для аудита, модификации и интеграции в локальные экосистемы.