TL;DR

  • marimohub는 자체 인프라에서 노트북을 저장·관리·실행하려는 팀을 위한 셀프 호스팅 플랫폼으로, 스토리지·컴퓨팅·인증 제공자를 직접 선택하는 구조임.
  • 별도 데이터베이스 없이 노트북 메타데이터, 버전, 스냅샷, 시스템 기록을 객체 스토리지에 저장하며, 객체 스토리지가 백업과 복구의 기준이 됨.
  • CoreWeave CAIOS, S3 호환 스토리지, Google Cloud Storage, Azure Blob Storage, 파일 시스템, Cloudflare R2 등과 여러 컴퓨팅·인증 제공자를 선택할 수 있음.
  • 로컬 개발 환경은 메모리 스토리지, 로컬 컴퓨팅, 고정된 로컬 슈퍼 관리자 인증을 사용하며, 영구 저장은 환경 변수로 설정할 수 있음.
  • 설정 기반 서버 이미지와 Helm, Kubernetes, AWS, GCP, Azure, Cloudflare 등의 배포 경로를 제공하지만, 호스팅 SaaS나 운영을 맡아주는 서비스는 아직 제공 범위가 아님.

marimohub

  • marimohub는 marimo 노트북을 저장·관리·실행하는 셀프 호스팅 플랫폼임.
  • 자체 인프라에서 노트북을 실행하면서 스토리지, 컴퓨팅, 인증 제공자를 직접 선택하려는 팀을 대상으로 함.
  • 별도 데이터베이스가 없으며, 노트북 메타데이터, 버전, 스냅샷, 시스템 기록이 객체 스토어에 저장됨. 백업과 복구의 기준 데이터는 객체 스토어임.
  • 외부 시스템은 TypeScript 포트 뒤에 배치되어 있어 도메인 로직을 변경하지 않고 운영자가 제공자를 교체할 수 있음.

제공 기능

  • 스토리지 선택: CoreWeave CAIOS, S3 호환 스토리지, Google Cloud Storage, Azure Blob Storage, 파일 시스템, Cloudflare R2.
  • 컴퓨팅 선택: CoreWeave Sandboxes, Modal, AWS ECS Fargate, Kubernetes, Docker, Podman, E2B, Cloudflare Containers, 로컬 하위 프로세스.
  • 인증 선택: OpenID Connect, 신뢰된 SSO 프록시, Google IAP, Cloudflare Access.
  • 선택 기능: 관리형 인공지능(AI), 버전 관리 통합, 암호화 값, 외부 시크릿 참조, 단기 연합 클라우드 액세스.
  • 운영 범위가 작고 제공자를 명시적으로 선택하는 셀프 호스팅 노트북 허브가 필요할 때 적합함. 호스팅형 서비스형 소프트웨어(SaaS)를 원하거나 스토리지·컴퓨팅·인증을 직접 운영하고 싶지 않은 경우에는 현재 적합한 형태가 아닐 가능성이 큼.

로컬에서 사용하기

  • 요구 사항은 Node.js 24.11 이상, pnpm 10.34.5, 그리고 로컬 노트북 커널을 시작하려는 경우 uv와 Python임.
  • pnpm install --frozen-lockfile로 의존성을 설치하고 pnpm dev로 개발 환경을 실행함.
  • pnpm dev는 TypeScript 서버를 감시하면서 Vite 웹 앱과 함께 실행하며, 프로덕션 서버 빌드는 건너뜀.
  • 로컬 스택 구성은 다음과 같음.
  • 비영구 메모리 스토리지.
  • uv run marimo edit를 시작하는 로컬 컴퓨팅.
  • 모든 사용자를 고정된 로컬 슈퍼 관리자로 로그인시키는 개발 인증.
  • 환영 노트북과 샘플 환경을 포함한 통합 기능 및 메타데이터 탐색.
  • MARIMOHUB_DEV_PERSIST=true를 설정하면 Git에서 무시되는 .context/dev-storage 디렉터리에 로컬 상태를 보존함. 개발 스택을 중지한 뒤 pnpm dev:reset을 실행하면 해당 상태를 지움.
  • 전체 로컬 실행 경로와 각 백엔드의 프로덕션 교체 방법은 로컬 테스트 안내에서 확인할 수 있음.

배포

  • 대부분의 배포는 설정 기반 서버 이미지를 사용하며, MARIMOHUB_* 환경 변수를 설정하면 @marimo-hub/config가 어댑터를 선택함.
  • 사용자 지정 런타임은 패키지를 라이브러리로 직접 조합할 수 있음.
  • 시작 안내를 확인한 뒤 다음 배포 가이드 중 하나를 선택함.
  • Helm.
  • CoreWeave(CKS).
  • Kubernetes.
  • AWS.
  • GCP.
  • Azure.
  • Cloudflare.
  • 참고 자료는 다음과 같음.
  • Configuration: 모든 MARIMOHUB_* 변수.
  • Storage, Compute, and Auth: 백엔드 선택지.
  • Security, Operations, and Troubleshooting: 프로덕션 운영.
  • API & client: HTTP 응답 봉투와 생성된 클라이언트.

기여

  • 저장소는 pnpm과 Vite-plus를 사용하는 TypeScript 모노레포임.
  • pnpm check, pnpm test, pnpm build로 검사·테스트·빌드를 실행함.
  • 풀 리퀘스트를 열기 전에 CONTRIBUTING.md를 읽어야 함.
  • 아키텍처와 내부 설계는 development_docs/architecture.md와 development_docs/bucket_spec.md에서 확인함.
  • 통합 기능 기여자는 development_docs/integrations.md도 읽어야 함.
  • marimohub는 Apache License, Version 2.0으로 배포되며, 라이선스 전문은 LICENSE에 있음.