앱마다 계정 만들기 지겹다면, '클라우드 스마트폰'을 자기 서버에 올려보세요

한눈에 보는 요약
Cloud in a Bottle은 컨테이너로 격리된 앱과 통합 인증(SSO)을 한데 묶은 오픈소스 개인 클라우드 플랫폼입니다. 목표는 명확합니다. 셀프 호스팅을 "주말마다 시스템 관리에 매달려야 하는 부업"이 아니라, 앱을 골라 설치하면 그냥 되는 스마트폰 같은 경험으로 바꾸는 것이죠.
- Ubuntu 기반 서버 위에서, 루트 권한 없는 보안 강화 컨테이너로 앱을 실행합니다
- 인스턴스에 한 번 로그인하면 모든 앱에 자동 로그인됩니다
- 권한 설정에 따라 앱끼리 데이터와 기능을 주고받는 인터페이스를 제공합니다
- 6개월 이상의 비공개 개발·테스트를 거쳐 핵심 플랫폼을 안정화한 뒤 출시했습니다
- 직접 호스팅과 Imbue의 관리형 서비스 중 선택 가능하며, 둘 다 완전히 같은 코드를 실행하고 원격 측정 데이터는 수집하지 않습니다
왜 '개인 클라우드'가 필요할까요?
클라우드 소프트웨어의 장점은 분명합니다. 설치할 필요가 없고, 어떤 기기에서든 접근할 수 있고, 공유와 협업이 즉각적입니다. 문제는 그 편리함에는 운영 비용이 따른다는 점입니다.
그래서 현대 웹의 거의 모든 서비스 뒤에는 기업이 있습니다. 무료 소프트웨어를 만드는 개발자가 전 세계 사용자의 호스팅 비용까지 떠안기는 현실적으로 불가능하니까요.
그리고 기업이 비용을 대는 순간, 경제적 유인이 사용자 이익과 어긋나기 시작합니다.
- 체류 시간을 늘리기 위한 중독적 설계
- 광고와 행동 추적
- 데이터 판매
- 시간이 지날수록 나빠지는 서비스 품질
클라우드 이전에는 각자의 PC에서 오픈소스를 돌리면 그만이었습니다. 하지만 지금은 개인이 자기 소프트웨어를 클라우드에 손쉽게 올릴 방법이 마땅치 않습니다. 결국 하나의 중앙화된 서비스와, 그 비용을 감당하는 제작자에게 의존하게 되죠.
기존 셀프 호스팅 도구들의 한계
물론 시도가 없었던 건 아닙니다. 다만 각자 아쉬운 지점이 있습니다.
| 프로젝트 | 아쉬운 점 | | --- | --- | | sandstorm.io | 취지가 매우 비슷하고 2014년 글이 같은 문제를 다뤘지만, 오랫동안 방치된 상태. 기존 소프트웨어를 올리려면 상당한 수정이 필요했음 | | Nextcloud | 느리고 불안정하다는 평가가 많고, 점차 기업 고객 중심으로 이동 중 | | YunoHost | 앱을 샌드박스 없이 호스트에서 직접 실행 → 안전하지 않은 앱 하나가 서버 전체를 침해할 수 있음 | | Coolify | 컨테이너 호스팅은 되지만 앱마다 로그인이 따로 놀고, 호스트·다른 앱과의 통합이 부족 |
정리하면 '접근성'과 '통합' 이 두 축에서 모두 만족스러운 선택지가 없었다는 이야기입니다.
핵심 아이디어: 컨테이너 격리 + 통합 로그인
Cloud in a Bottle의 실체는 의외로 단순합니다. 대시보드와 웹 서버를 갖춘 Ubuntu 머신이고, 웹 서버가 들어오는 HTTP(S) 요청을 각 컨테이너 앱으로 넘겨줍니다.
여기서 눈여겨볼 설계 결정이 몇 가지 있습니다.
1. 루트 권한 없는(rootless) 보안 강화 컨테이너
앱은 루트 권한 없이 격리된 컨테이너에서 돌아갑니다. 덕분에 두 마리 토끼를 잡습니다.
- 기존 소프트웨어를 거의 수정하지 않고 그대로 올릴 수 있음 (sandstorm의 발목을 잡았던 지점)
- 그러면서도 합리적인 수준의 보안 샌드박스를 확보 (YunoHost의 약점 보완)
2. 한 번 로그인하면 모든 앱에 로그인
인스턴스에 로그인하는 순간 설치된 앱 전체에 자동으로 로그인됩니다. 앱마다 계정을 새로 만들 필요가 없습니다. 셀프 호스팅을 해본 분이라면 이게 얼마나 큰 차이인지 아실 겁니다.
3. 앱 간 데이터·기능 연결 API
같은 인스턴스 안의 앱들이 권한 설정에 따라 서로의 데이터와 기능에 접근할 수 있습니다. 개발팀이 참고한 모델은 Android와 iOS입니다. 센서 접근, 알림, 건강 데이터 공유 API처럼 개인 클라우드를 위한 통합 API를 구상해 온 것이죠.
그래서 이 프로젝트가 스스로를 설명하는 표현이 "클라우드 스마트폰" 입니다. 소유자가 앱을 쉽게 찾고, 설치하고, 앱끼리 자연스럽게 연동되는 환경 말이죠.
출시 상태: 무엇이 되고, 무엇이 아직인가
여기서는 솔직하게 짚고 넘어가겠습니다.
잘 준비된 부분
- 6개월 이상 비공개 개발·테스트를 거쳐, 핵심 플랫폼이 대부분 완성되고 안정화된 시점에 공개했습니다
- 오픈소스 · 직접 호스팅 가능 · 원격 측정 없음을 원칙으로 삼습니다
- 가능한 한 단순하고 숨은 동작이 없는 구성을 지향합니다
- 개발자 본인이 자신의 디지털 생활을 개인 Bottle 인스턴스로 조금씩 옮기고 있습니다
아직 부족한 부분
- 앱 카탈로그가 작습니다. 다만 이건 방치의 결과가 아니라 의도적 선택에 가깝습니다. "실제 사용자 경험이 좋은 앱만 추가한다"는 높은 기준을 적용하고 있기 때문입니다. 현재 매주 앱을 추가하는 중이며, 커뮤니티의 도움으로 속도를 높이려 합니다
- 초기 사용자에게는 진입 장벽이 있습니다. 원하는 앱을 찾거나 직접 만들고 고치려면 기술적 지식이나 코딩 에이전트의 도움이 필요할 수 있습니다. 이를 위해 앱 제작 문서를 제공합니다
지속 가능성에 대한 답: 관리형 서비스
Imbue는 접근성을 높이는 동시에 프로젝트를 계속 이어갈 사업 모델로 관리형 서비스를 함께 제공합니다. 중요한 건 그 다음입니다.
- 오픈소스 · 직접 호스팅 방식도 정확히 같은 코드를 실행합니다
- 앞으로도 두 방식을 동등하게 우선 지원할 방침입니다
오픈소스 프로젝트가 상업화하면서 자체 호스팅 사용자가 2등 시민이 되는 흔한 패턴을, 처음부터 명시적으로 경계하고 있는 셈입니다.
이 프로젝트가 풀려는 진짜 문제
프로젝트가 지적하는 악순환 구조는 이렇습니다.
쉬운 셀프 호스팅 수단 부족 → 오픈소스 웹 소프트웨어의 사용자층 축소 → 작은 사용자층이 다시 소프트웨어 공급 제한
Cloud in a Bottle은 이 고리의 첫 단추를 끊으려 합니다. 개인 클라우드의 접근성을 끌어올려 사용자층과 공급을 함께 키우겠다는 것이죠.
최종 목표는 꽤 구체적입니다. 기술 애호가뿐 아니라 친구와 부모님에게도 자신 있게 추천할 수 있는 오픈소스 웹 소프트웨어를 늘리는 것입니다.
어떻게 써볼 수 있나요?
선택지는 크게 두 갈래입니다.
1. 관리형 서비스로 가볍게 시작
- 관리형 인스턴스 무료 체험에 10달러 크레딧을 제공합니다
- 서버 세팅 없이 바로 감을 잡고 싶다면 여기서 출발하는 게 좋습니다
2. 직접 호스팅
- 클라우드 VPS에 직접 설치
- 자체 하드웨어의 VM에 설치
- 베어메탈에 직접 설치
그리고 더 깊이 들어가고 싶다면 GitHub에서 소스 코드를 확인하고, Matrix 커뮤니티 대화방에서 이야기를 나눌 수 있습니다.
마치며
셀프 호스팅은 오랫동안 "할 줄 아는 사람만 하는 것"이었습니다. Cloud in a Bottle이 던지는 질문은 그 전제 자체를 향합니다. 스마트폰에서 앱 설치하듯 개인 클라우드를 쓸 수는 없을까?
아직 카탈로그는 작고 초기 사용자에게는 어느 정도의 기술적 배경이 필요합니다. 하지만 컨테이너 격리 + 통합 로그인 + 앱 간 연동 API라는 조합은, 앞선 프로젝트들이 각각 하나씩 놓쳤던 조각을 한자리에 모으려는 시도라는 점에서 충분히 지켜볼 만합니다.
내 데이터가 어디에 있는지 신경 쓰기 시작했다면, 10달러 크레딧으로 한번 굴려보시는 것도 좋겠습니다.