Проблема облачного софта
Цифровой мир разочаровывает. Программное обеспечение, которое мы используем, преднамеренно настроено против наших интересов: оно навязывает привычки, перегружено рекламой, отслеживает пользователей и продает их данные. Разработка ПО никогда не была такой доступной, но почему тогда мы пришли в такое состояние?
Виной тому — миграция софта в облако. Приложения в облаке (вроде Google Docs вместо Microsoft Word) обеспечивают прекрасный опыт: ничего не нужно устанавливать, можно использовать на всех устройствах, легко делиться и сотрудничать. Однако развертывание чего-то в облаке требует денег. Поэтому за почти всем современным веб-софтом стоит компания — авторы открытого ПО просто не хотят платить за хостинг своих бесплатных проектов. А эти компании заинтересованы в совсем другом, чем пользователи.
В доклаудовую эпоху открытый софт работал иначе: авторы распространяли код, и каждый запускал его у себя. Теперь облачный софт централизован — один экземпляр приложения служит миру, и затраты ложатся на создателя. Причина проста: обычные люди не имеют простого способа развернуть свое облако.
Почему существующие решения не подходят
Самохостинг существует, но остается нишей и сложен для новичков. Среди существующих вариантов каждый имеет свои недостатки:
- Sandstorm — идеален по философии (их статья 2014 года выражает эту идею), но проект заброшен. Кроме того, требовались значительные изменения в коде приложений для работы с платформой.
- Nextcloud — медленный, ненадежный, переориентирован на корпоративных клиентов.
- YunoHost — приложения запускаются прямо на хосте без изоляции. Одно уязвимое приложение компрометирует весь сервер.
- Coolify — хостит контейнеризованные приложения, но каждое из них изолировано, со своей авторизацией и минимальной интеграцией.
Cloud in a Bottle: новый подход
Cloud in a Bottle создан, чтобы попробовать еще раз. На базовом уровне это просто машина Ubuntu с веб-сервером, веб-интерфейсом и маршрутизацией HTTPS запросов к контейнеризованным приложениям. Приложения работают в контейнерах (без привилегий root, с усиленной безопасностью), поэтому можно запускать существующий софт с минимальными изменениями — в относительно безопасной изоляции.
Но это больше, чем просто хостинг контейнеров (как в Coolify). Платформа предлагает опциональные функции, которыми приложения могут пользоваться для улучшения опыта. Задача — создать «облачный смартфон», который вы владеете: находить и устанавливать приложения просто, а пользовательский опыт соперничает с закрытыми альтернативами. Базовый пример: если вы авторизованы на своем сервере, вы автоматически авторизованы во всех приложениях — не нужна отдельная учетная запись в каждом. Есть интерфейс для управления доступом между приложениями. По сути, нужны те же API, которые предоставляют Android и iOS приложениям (доступ к сенсорам, уведомления, обмен данными о здоровье). Разработчики потратили немало времени, размышляя о правильных аналогах этих API для личного облака.
Open source и бизнес-модель
Платформа открыта, само-хостируема, без телеметрии и старается быть максимально простой. Imbue — компания, создавшая Cloud in a Bottle, — также предлагает управляемую версию. Это критично для массовой доступности и обеспечивает честную бизнес-модель для развития проекта. Открытый путь самохостинга использует точно такой же код и всегда будет первоклассным.
Разработка велась в приватном режиме 6+ месяцев. Теперь ядро платформы стабильно, и команда постепенно переносит свою цифровую жизнь в свои Bottle-инстансы — впечатления отличные. Однако есть классическая проблема курицы и яйца: без простого способа самохостинга открытого веб-софта аудитория такого ПО остается мала, и выбор приложений ограничен. Главная цель — стимулировать создание большего количества качественного открытого веб-софта, рекомендовать его друзьям и родителям, а не только технически подкованным людям. Кураторский каталог приложений — шаг в этом направлении: добавляются только приложения с отличным пользовательским опытом, поэтому каталог пока невелик. Но каждую неделю добавляются новые приложения.
Сейчас первым пользователям нужна некоторая техническая грамотность (или помощь AI-агента), чтобы найти или адаптировать нужное ПО. Но со временем, по мере расширения каталога и полирования интерфейса, платформа станет доступнее для всех.