본문 바로가기
솔루션

Capgo 셀프 호스팅

Capgo를 셀프 호스팅하면 Capgo 클라우드 서비스를 사용하지 않고도 사용자에게 Capacitor live updates를 배포할 수 있습니다.

Capgo Capgo 셀프 호스팅 블로그 일러스트

이 글에서는 Capgo를 셀프 호스팅하는 방법을 단계별로 안내하고, 셀프 호스팅의 이점과 과제도 함께 다룹니다.

소개

셀프 호스팅은 서버와 네트워크를 직접 구축해 자신의 웹사이트나 애플리케이션을 운영하는 방식입니다. PaaS나 퍼블릭 클라우드 제공업체를 이용하는 대신, 셀프 호스팅을 선택하면 직접 네트워크를 운영하고 웹사이트나 애플리케이션 구축은 물론 유지보수와 가동 시간까지 책임져야 합니다.

Capgo를 시작하는 가장 쉬운 방법은 저희 클라우드 기반의 공식 매니지드 서비스, 하지만 직접 관리하는 것을 선호한다면 서버에 Capgo를 셀프 호스팅할 수도 있습니다.

Self-hosting이란 무엇인가요?

디지털 환경에서 셀프 호스팅이란 온라인 서비스와 인프라를 직접 관리하고 제어하기 위해 자체 서버를 운영하는 방식을 의미합니다. 서드파티 호스팅 업체에 의존하는 대신, 개인이나 조직이 원하는 방식대로 서버, 웹사이트, 애플리케이션 및 데이터 저장소를 직접 구축하고 관리하는 것입니다.

왜 Self-hosting을 선택하나요?

셀프 호스팅을 선택하는 이유는 매우 다양합니다. 대표적인 장점은 다음과 같습니다:

  • 개인정보 보호 및 제어권: 셀프 호스팅을 하면 데이터와 개인정보에 대해 완벽한 제어권을 가집니다. 서드파티 업체가 사용자의 활동을 추적하거나 데이터를 판매할 걱정을 할 필요가 없습니다.

  • 비용 절감: 많은 리소스를 사용하거나 여러 서비스를 운영하는 경우, 장기적으로 셀프 호스팅이 더 경제적일 수 있습니다.

  • 커스터마이징: 셀프 호스팅을 통해 특정 요구 사항에 맞춰 애플리케이션과 서비스를 유연하게 커스터마이징할 수 있습니다.

  • 학습 및 실험: Self-hosting은 Linux, 시스템 관리 및 기타 기술적 주제를 배우기에 아주 좋은 방법입니다. 또한 새로운 소프트웨어와 서비스를 실험해 볼 수 있는 즐거운 방법이기도 합니다.

  • 독립성: Self-hosting을 사용하면 외부 제공업체에 대한 의존도를 낮출 수 있습니다. 서비스 약관, 가격 변동 또는 잠재적인 서비스 중단에 휘둘리지 않습니다. 이러한 독립성은 핵심 기능에 온라인 환경을 활용하는 기업과 개인에게 매우 중요할 수 있습니다.

Capgo Cloud와 Capgo Self-Hosted의 차이점은 무엇인가요?

Capgo은 단 하나의 버전만 존재합니다. Cloud 버전과 Self-Hosted 제품은 완전히 동일합니다. 더 나은 기능이나 더 완전한 기능 세트를 갖춘 프리미엄 전용 상용 버전은 따로 없습니다.

두 버전 모두 동일한 dashboard와 실행 가능한 metrics를 제공하며, 방문자의 개인정보를 보호하려는 약속 또한 동일하게 지킵니다.

저는 2018년 12월에 Capgo 개발을 시작했고, 2019년 5월에 SaaS 구독 비즈니스를 런칭했습니다. 이 프로젝트는 현재 매우 활발하게 개발되고 있으며 빠르게 성장하고 있습니다. 또한 견고하고 검증된 시스템입니다.

Capgo Cloud와 Capgo Self-Hosted의 차이점은 다음과 같습니다:

  클라우드 셀프 호스팅
호스팅 쉽고 편리합니다. 첫 업데이트 전송을 시작하는 데 2분이면 충분하고, 고가용성, 백업, 보안, 유지보수는 제가 모두 처리해 드립니다. 제가 모든 것을 관리하니 아무것도 걱정하지 않으셔도 됩니다. 모든 것을 직접 해야 합니다. 서버를 구하고 인프라를 관리해야 하죠. 설치, 유지보수, 업그레이드, 서버 용량, 업타임, 백업, 보안, 안정성, 일관성, 로딩 시간 등을 모두 직접 책임져야 합니다.
스토리지 모든 방문자 데이터는 EU 소유의 클라우드 인프라에서만 처리됩니다. 사이트 데이터는 독일의 안전하게 암호화된 서버에 보관합니다. 이를 통해 사이트 데이터는 유럽 연합의 엄격한 데이터 개인정보 보호법으로 보호되고 GDPR도 준수됩니다. 웹사이트 데이터는 절대 EU를 벗어나지 않습니다. 완전한 제어권을 가지며, 원하는 국가의 어떤 서버에서든 Capgo를 호스팅할 수 있습니다. 지하실에 있는 서버에 호스팅하거나, 원하는 곳의 어떤 클라우드 제공업체에든 호스팅하세요. GDPR을 준수하지 않는 곳이라도 괜찮습니다.
원시 데이터 현대적이고 사용하기 쉬우며 로딩이 빠른 대시보드에서 모든 사이트 통계와 메트릭을 확인할 수 있습니다. 대시보드에 집계된 통계만 볼 수 있습니다. 분석가로서 원시 데이터에 접근하고 싶으신가요? Capgo를 직접 호스팅하면 가능합니다. 데이터베이스에서 데이터를 직접 가져와 원하는 데이터 분석 도구로 임포트하세요.
비용 업데이터 서비스를 제공하는 데는 비용이 들기 때문에 구독료를 받습니다. 서버 비용과 서버 운영에 필요한 비용만 지불하면 됩니다. 저에게 별도의 수수료를 낼 필요 없이, 클라우드 제공업체에만 비용을 지불하면 됩니다.
프리미엄 지원 Capgo을 직접 빌드하고 관리하는 엔지니어가 제공하는 실질적인 지원을 경험하세요. Premium support는 포함되어 있지 않습니다. Self-hosted 버전은 커뮤니티 지원만 제공됩니다.
릴리스 매주 여러 차례 새로운 기능과 업데이트가 추가되며 지속적으로 개발 및 개선됩니다. 연 2회 배포되는 Long Term Release 버전이므로, 클라우드에서 먼저 검증을 거친 최신 기능은 즉시 반영되지 않을 수 있습니다.

Capgo Self-hosting 방법

Capgo은 주로 Supabase를 사용합니다. Self-hosting을 하려면 다음의 Supabase self-hosting 문서를 참고하세요..

자체 호스팅 capgo 환경에서 CLI 사용하기

Self-hosted capgo 환경에서 CLI을 사용하려면, 앱 디렉토리의 capacitor.config.ts를 다음과 같이 수정하세요:

const config: CapacitorConfig = {
  appId: 'com.demo.app',
  appName: 'demoApp',
  webDir: 'dist',
  bundledWebRuntime: false,
  plugins: {
    CapacitorUpdater : {
      localHost: "http://localhost:5173",
      localWebHost: "http://localhost:5173",
      localSupa: "http://localhost:54321",
      localSupaAnon: "see_notes",
    },
  },
};

참고: localSupaAnon을 가져오려면 이 가이드를 따르세요 튜토리얼을 그 다음 anon key를 복사하여 localSupaAnon에 붙여넣으세요

자체 호스팅 capgo 환경에서 capacitor updater 사용하기

요구 사항

Cloned capgo

자체 호스팅하는 capgo에서 capacitor updater를 사용하려면 capacitor.config.ts 앱 디렉토리에서 다음 파일을 수정하고 아래와 같이 설정하세요:

const config: CapacitorConfig = {
  appId: 'com.demo.app',
  appName: 'demoApp',
  webDir: 'dist',
  bundledWebRuntime: false,
  plugins: {
    CapacitorUpdater : {
      statsUrl: "https://localhost:54321/functions/v1/stats",
      channelUrl: "https://localhost:54321/functions/v1/channel_self",
      updateUrl: "https://localhost:54321/functions/v1/updates"
    },
  },
};

이렇게 하면 개발 시 로컬 capgo를 사용할 수 있습니다. 하지만 기본 설정만으로는 부족합니다.

양쪽 OS 모두에서 테스트하려면 HTTPS 설정이 반드시 필요합니다

마치며

결론적으로, Capgo를 셀프 호스팅하는 것은 이를 수행할 리소스와 전문 지식을 갖춘 조직에게 좋은 선택지가 될 수 있습니다. 업데이트 프로세스 제어, 보안 및 컴플라이언스 측면에서 다양한 이점을 제공합니다. 다만, 셀프 호스팅을 결정하기 전에 이점과 도전 과제를 신중하게 검토하는 것이 중요합니다.

만약 Capgo 셀프 호스팅을 고려하고 계신다면, 먼저 Capgo 셀프 호스팅 문서를 읽어보시는 것을 추천합니다. 이를 통해 셀프 호스팅에 필요한 요구 사항과 리스크를 충분히 파악할 수 있습니다.

Self-hosted Capgo로 더 나아가기

사용 중이라면 Capgo 셀프 호스팅 CI/CD 자동화를 계획하려면, 다음을 연결하세요 Capgo CI/CD 설정하기 Capgo CI/CD의 제품 워크플로우용, Capgo Native Build Capgo Native Builds의 제품 워크플로우용, Capgo 연동 서비스 Capgo Integrations의 제품 워크플로우용, CI/CD 통합 CI/CD Integration의 구현 세부 사항은, 그리고 GitHub Actions 연동 GitHub Actions Integration의 구현 세부 사항을 참고하세요.

Capacitor 앱용 Live updates

웹 레이어 버그가 라이브 상태라면, 앱 스토어 승인을 며칠씩 기다리지 말고 Capgo를 통해 수정 사항을 배포하세요. 네이티브 변경 사항은 정상 리뷰 절차를 그대로 따르는 반면, 사용자는 백그라운드에서 업데이트를 받습니다.

블로그 최신 글

Capgo는 정말 프로페셔널한 모바일 앱을 만드는 데 필요한 최고의 인사이트를 제공합니다.