페이지 복사 옵션
복사할 수 있는 설정 명령
Capgo은 앱 번들을 위한 사용자 정의 저장소 솔루션을 지원하며, 업데이트를 자체 인프라 또는 제3자 저장소 서비스에 호스팅할 수 있습니다. 특히, 특정 보안 요구 사항, 규정 준수 필요성 또는 기존 저장소 인프라가 있는 조직에게 유용합니다.
개요
제목: 개요Capgo에서 사용하는 사용자 지정 저장소는 Capgo URL을 제공하여 외부 위치에 업로드한 번들을 업로드하고, Capgo SDK는 Capgo의 기본 클라우드 저장소 대신 사용자 지정 저장소 위치에서 직접 업데이트를 다운로드합니다.
외부 URL 업로드
제목: 외부 URL 업로드Capgo에 사용자 지정 저장소를 사용하는 가장 쉬운 방법은 외부에 공개적으로 접근할 수 있는 URL에 번들을 업로드하고, 그 URL을 Capgo에 제공하는 것입니다.
기본 외부 URL 업로드
기본 외부 URL 업로드 섹션npx @capgo/cli@latest bundle upload --external https://your-domain.com/bundles/v1.2.3.zipCapgo이 지정된 URL의 번들에 대한 참조를 Capgo의 클라우드 스토리지에 업로드하는 대신 명령합니다.
암호화
암호화 섹션보안 외부 스토리지에 대한 암호화된 번들을 제공하고 복호화 키를 제공할 수 있습니다.
npx @capgo/cli@latest bundle upload --external https://your-domain.com/bundles/v1.2.3.zip --iv-session-key YOUR_IV_SESSION_KEYS3 통합
S3 통합 섹션Capgo는 Amazon S3와 S3 호환 저장소 서비스에 대한 내장 지원을 제공합니다. CLI은 S3로 패키지를 자동으로 업로드하고 Capgo을 S3 URL을 사용하도록 구성할 수 있습니다.
S3 업로드 옵션
S3 업로드 옵션 섹션npx @capgo/cli@latest bundle upload \ --s3-region us-east-1 \ --s3-apikey YOUR_ACCESS_KEY \ --s3-apisecret YOUR_SECRET_KEY \ --s3-bucket-name your-bucket-nameS3 구성 완료
S3 구성 완료 섹션S3 호환 서비스 또는 커스텀 엔드포인트에 대해:
npx @capgo/cli@latest bundle upload \ --s3-region us-east-1 \ --s3-apikey YOUR_ACCESS_KEY \ --s3-apisecret YOUR_SECRET_KEY \ --s3-endpoint https://s3.your-provider.com \ --s3-bucket-name your-bucket-name \ --s3-port 443 \ --no-s3-ssl # Only if your endpoint doesn't support SSLS3 구성 매개변수
S3 구성 매개변수 섹션| 파라미터 | 설명 | 필수 |
|---|---|---|
--s3-region | S3 버킷이 있는 AWS 지역 | 네 |
--s3-apikey | S3 접근 키 ID | 네 |
--s3-apisecret | S3 비밀 접근 키 | 네 |
--s3-bucket-name | S3 버킷 이름 | 네 |
--s3-endpoint | 사용자 지정 S3 엔드포인트 URL | 없음 |
--s3-port | S3 엔드포인트의 포트 | 없음 |
--no-s3-ssl | S3 업로드를 위한 SSL 비활성화 | 없음 |
압축 파일 준비 및 암호화
압축 파일 준비 및 암호화커스텀 스토리지 사용 시, 특히 암호화 사용 시, 압축 파일을 준비해야 합니다. 이에는 zip 파일을 생성하고 암호화하는 것을 포함합니다.
1단계: Zip 압축 파일 생성
1단계: Zip 압축 파일 생성먼저 앱 압축 파일의 zip 파일을 생성하세요:
npx @capgo/cli@latest bundle zip com.example.app --path ./distzip 명령어는 zip 파일의 체크섬을 반환합니다. 체크섬을 사용하여 zip 파일을 암호화할 수 있습니다. 필요한 경우 체크섬을 포함하는 구조화된 출력을 얻으려면 --json option을 사용하세요.
zip 명령어 옵션
zip 명령어 옵션 섹션npx @capgo/cli@latest bundle zip [appId] \ --path ./dist \ --bundle 1.2.3 \ --name myapp-v1.2.3 \ --json \ --no-code-check \ --key-v2 \ --package-json ../../package.json,./package.json| 옵션 | 설명 |
|---|---|
--path | zip 명령어에서 사용할 폴더 경로 (기본값: capacitor.config의 webDir) |
--bundle | bundle 버전 번호를 사용하여 zip 파일 이름을 지정합니다. |
--name | zip 파일에 사용할 사용자 지정 이름 |
--json | JSON 형식으로 결과를 출력 (체크섬 포함) |
--no-code-check | notifyAppReady() 호출 및 인덱스 파일을 확인하지 않음 |
--key-v2 | 암호화 v2 사용 |
--package-json | 모노레포의 package.json 파일 경로 (쉼표로 구분) |
2단계: 압축 파일 암호화 (선택)
2단계: 압축 파일 암호화 (선택) 섹션업로드하기 전에 압축 파일을 암호화하여 보안을 강화하세요.
# Using default local keynpx @capgo/cli@latest bundle encrypt ./myapp.zip CHECKSUM
# Using custom key filenpx @capgo/cli@latest bundle encrypt ./myapp.zip CHECKSUM --key ./path/to/.capgo_key_v2
# Using key data directlynpx @capgo/cli@latest bundle encrypt ./myapp.zip CHECKSUM --key-data "PRIVATE_KEY_CONTENT"그것 CHECKSUM 필수 매개변수이며, zip 파일의 체크섬이어야 합니다. zip 명령어의 출력에서 체크섬을 가져올 수 있습니다 (구조화된 출력을 사용하여) --json option
By default, the encrypt command will use your local private signing key. You can specify a custom key using the --key or --key-data Capacitor live-update alternatives comparison page에서 사용하는 HTML 텍스트 조각 (부모 키 `alternatives_cta_questions`). 페이지/영역: Capacitor live-update 대안 비교 페이지. 역할: 장기 마케팅 또는 법적 문단. 보존: Capgo 제품/브랜드 및 개발자 용어. | HTML 텍스트 조각 (부모 키 `appflow_cta_questions`). 페이지/영역: Appflow 비교/이동 마케팅 복사본. 역할: 장기 마케팅 또는 법적 문단. 보존: Capgo 제품/브랜드 및 개발자 용어. | HTML 텍스트 조각 (부모 키 `capwesome_cta_questions`). 페이지/영역: Capawesome 비교 페이지. 역할: 장기 마케팅 또는 법적 문단. 보존: Capgo 제품/브랜드 및 개발자 용어. | HTML 텍스트 조각 (부모 키 `consulting_faq_subtitle`). 페이지/영역: 컨설팅 서비스 페이지. 역할: 섹션 서브 타이틀 또는 태그 라인. 보존: Capgo 제품/브랜드 및 개발자 용어. | Appflow 비교/이동 마케팅 복사본
options. ivSessionKey The encrypt command will return the
needed for upload or decryption.
암호화 명령 옵션| 암호화 명령 옵션 섹션 | 옵션 |
|---|---|
zipPath | 설명 |
checksum | 암호화할 zip 파일의 경로 (필수) |
--key | zip 파일의 체크섬 (필수) - zip 명령에서 가져오세요 |
--key-data | 개인 서명 키 데이터 직접 입력 (선택 사항) |
--json | JSON 형식으로 결과 출력 |
완전한 워크플로우 예제
제목이 "완전한 워크플로우 예제"인 섹션예제 1: 암호화된 외부 URL
제목이 "예제 1: 암호화된 외부 URL"인 섹션-
앱을 빌드하세요:
터미널 창 npm run build -
압축 파일로 복사:
터미널 창 npx @capgo/cli@latest bundle zip com.example.app --path ./dist --bundle 1.2.3이 명령어의 반환된 체크섬을 주의 깊게 확인하세요.
-
압축 파일 암호화:
터미널 창 npx @capgo/cli@latest bundle encrypt ./com.example.app-1.2.3.zip CHECKSUM_FROM_STEP_2출력에서
ivSessionKey__CAPGO_KEEP_0__ -
를 주의 깊게 확인하세요. __CAPGO_KEEP_0__
-
Capgo
터미널 창 npx @capgo/cli@latest bundle upload \--external https://your-cdn.com/bundles/com.example.app-1.2.3.zip \--iv-session-key IV_SESSION_KEY_FROM_STEP_3
직접 S3 업로드 예제
직접 S3 업로드 예제-
앱을 빌드하세요:
터미널 창 npm run build -
직접 S3 업로드:
터미널 창 npx @capgo/cli@latest bundle upload \--s3-region us-west-2 \--s3-apikey YOUR_ACCESS_KEY \--s3-apisecret YOUR_SECRET_KEY \--s3-bucket-name your-app-bundles \--channel Production
예제 3: 암호화된 S3
암호화된 S3 예제 3-
빌드 및 압축:
터미널 창 npm run buildnpx @capgo/cli@latest bundle zip com.example.app --path ./dist --key-v2 -
압축 파일 암호화:
터미널 창 npx @capgo/cli@latest bundle encrypt ./com.example.app.zip CHECKSUM -
암호화된 S3 업로드:
터미널 창 npx @capgo/cli@latest bundle upload \--s3-region us-west-2 \--s3-apikey YOUR_ACCESS_KEY \--s3-apisecret YOUR_SECRET_KEY \--s3-bucket-name your-app-bundles \--iv-session-key IV_SESSION_KEY_FROM_STEP_2 \--channel Production
보안 고려 사항
보안 고려 사항커스텀 스토리지 사용 시 다음 보안 권장 사항을 고려하십시오:
액세스 제어
액세스 제어- 앱 사용자에게만 스토리지 URL이 접근 가능하도록 하되, 공개적으로 발견되지 않도록 하십시오.
- 가능한 경우 서명된 URL 또는 토큰 기반 인증을 사용하십시오.
- 웹 기반 앱의 경우 적절한 CORS 헤더를 implement 하십시오.
암호화
암호화- _sensitive bundle_을 항상 Capgo 암호화 도구를 사용하여 암호화하십시오.
- 암호화 키를 안전하게 저장하고 정기적으로 rotate 하십시오.
- 모바일 및 Electron 앱의 경우 모든 bundle URL에 HTTPS를 사용하십시오.
감시
‘감시’란- 다운로드 패턴이 이상한지 감시 로그를 확인하세요
- 다운로드 실패 시 알림 설정
- 저장소 권한을 정기적으로 감사하세요
문제 해결
‘문제 해결’란일반적인 문제
‘일반적인 문제’란배포 패키지 다운로드 실패:
- URL이 공개적으로 접근 가능하고 HTTPS를 사용하는지 확인하세요 (모바일 및 Electron 앱의 경우 필수)
- 웹 앱의 CORS 헤더를 확인하세요
- 정확한 번들 형식이 보장되도록 하세요.
암호화 오류:
- 확인하세요.
ivSessionKey암호화된 번들과 일치하는지 확인하세요. - 정확한 암호화 키로 번들이 암호화되었는지 확인하세요.
- 새로운 번들에 대해 암호화 v2를 사용하도록 하세요.
S3 업로드 실패:
- S3 인증 정보 및 권한을 확인하세요.
- 버킷 정책 및 CORS 구성 확인하세요.
- 지정된 지역이 정확한지 확인하세요.
디버그 명령
디버그 명령배포 상태 확인:
npx @capgo/cli@latest app debug배포完整성 확인:
npx @capgo/cli@latest bundle list다음 단계
다음 단계- 배우기 채널 다양한 배포 환경 관리
- 탐색 업데이트 동작 업데이트를 적용하는 방법을 커스터마이즈하세요
- 설정 CI/CD 통합 페이지/영역: Capgo 빌더 / 네이티브 클라우드 빌드 제품 페이지. 역할: 짧은 UI 레이블 또는 네비게이션 아이템. 메시지 키 `native_build_feature_ci_cd` (Native Build Feature Ci Cd).
자동화된 커스텀 스토리지 워크플로우를 구축하세요
Custom Storage에서 계속 진행하세요Custom Storage에서 계속 진행하는 방법 Custom Storage를 사용 중이라면 Custom Storage 보안 및 규정 준수 계획을 위해 커스터마이즈하는 경우 Encryption 법적 준수 법적 준수에 대한 구현 세부 사항 Capgo 보안 스캐너 Capgo 보안 스캐너의 제품 워크플로우 Capgo 보안 Capgo 보안의 제품 워크플로우 Capgo 신뢰 센터 Capgo 신뢰 센터의 제품 워크플로우