カスタムストレージ
このプラグインのインストール手順と全マークダウンガイドを含む設定用の質問をコピーします。
Capgoでは、独自のストレージソリューションをサポートして、アプリケーションバンドルのアップデートを自社のインフラまたは第三者ストレージサービスでホストできます。
Overview
Section titled “Overview”Custom storage in Capgo works by uploading your bundle to an external location and providing Capgo with the URL to access it. The Capgo SDK will then download updates directly from your custom storage location instead of Capgo’s default cloud storage.
外部URLアップロード
「外部URLアップロード」のセクションCapgoに公開アクセス可能なURLを指定して、Capgoにバンドルをアップロードするのではなく、Capgoが指定されたURLのバンドルを参照するように指示するコマンド
基本的な外部URLアップロード
「基本的な外部URLアップロード」のセクションnpx @capgo/cli@latest bundle upload --external https://your-domain.com/bundles/v1.2.3.zipCapgoのクラウドストレージにアップロードするのではなく、Capgoが指定された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 | Yes |
--s3-apisecret | S3シークレットアクセスキー | Yes |
--s3-bucket-name | S3バケットの名前 | Yes |
--s3-endpoint | カスタムS3エンドポイントURL | No |
--s3-port | S3エンドポイントのポート | No |
--no-s3-ssl | S3アップロードのSSL無効化 | No |
バンドル作成と暗号化の準備
「バンドル準備と暗号化」のセクション__CAPGO_KEEP_0__の場合、カスタムストレージを使用すると、特に暗号化を使用する場合、バンドルを適切に準備する必要があります。これは、zipファイルを作成し、必要に応じて暗号化することを含みます。
ステップ 1: Zip バンドルを作成する
「ステップ 1: Zip バンドルを作成する」のセクション最初に、zipファイルを作成してアプリケーションバンドルを圧縮してください。
npx @capgo/cli@latest bundle zip com.example.app --path ./distzipコマンドはzipファイルのチェックサムを返します。このチェックサムを使用してzipファイルを暗号化する必要がある場合は、使用できます。 --json オプションを使用して、構造化された出力、チェックサムを含む。
「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 | capacitor.configのwebDirからデフォルトのフォルダパスを指定 |
--bundle | バンドルバージョン番号をzipファイルの名前として使用 |
--name | カスタムのzipファイル名 |
--json | JSON形式で出力(チェックサムを含む) |
--no-code-check | notifyAppReady()の呼び出しとindexファイルのチェックをスキップ |
--key-v2 | 暗号化v2を使用 |
--package-json | モノレポ用のpackage.jsonファイルのパス(カンマ区切り) |
ステップ 2: バンドルを暗号化(オプション)
「ステップ 2: バンドルを暗号化(オプション)」のセクションセキュリティを強化するために、zip バンドルをアップロードする前に、暗号化してください:
# 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"The CHECKSUM __CAPGO_KEEP_0__は必須のパラメーターで、zipファイルのチェックサムを指定してください。チェックサムはzipコマンドの出力から取得できます (structured outputのオプションを使用)。 --json デフォルトでは、encryptコマンドはローカルプライベート署名キーを使用します。カスタムキーを指定するには、オプションを使用してください。
encryptコマンドは、アップロードまたは復号化に必要な --key を返します。 --key-data 暗号化コマンドのオプション
__CAPGO_KEEP_0__ ivSessionKey __CAPGO_KEEP_0__
__CAPGO_KEEP_0__
「暗号化コマンドオプション」セクションのタイトル| オプション | 説明 |
|---|---|
zipPath | 暗号化するzipファイルのパス(必須) |
checksum | zipファイルのチェックサム(必須) - zipコマンドから取得 |
--key | プライベート署名鍵のカスタムパス(任意、ローカル鍵を使用する場合) |
--key-data | プライベート署名鍵データを直接指定(任意) |
--json | 出力結果をJSON形式で出力 |
ワークフロー例
「ワークフロー例」のセクション例 1:暗号化された外部 URL
「例 1:暗号化された外部 URL」のセクション-
アプリをビルドする:
ターミナル画面 npm run build -
zip アーカイブを作成する:
ターミナル画面 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出力から -
アップロードする: ホスティングサービスに暗号化したzipファイルをアップロードする。
-
「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
例2: S3への直接アップロード
「例2: S3への直接アップロード」のセクション-
__CAPGO_KEEP_0__を構築:
ターミナルウィンドウ 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に暗号化
例3:S3に暗号化-
__CAPGO_KEEP_0__をビルドしてzip:
ターミナルウィンドウ 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ヘッダーを実装する
- 敏感なバンドルを常にCapgo暗号化ツールを使用して暗号化する
- 暗号化キーを安全に保存し、定期的にローテートする
- モバイルおよびElectronアプリケーション向けにはすべてのバンドルURLにHTTPSを使用する (必須)
- アクセスログを監視して異常なダウンロードパターンを検出する
- バンドルダウンロードに失敗したときにアラートを設定する
- ストレージパーミッションを定期的に検証する
トラブルシューティング
Section titled “Troubleshooting”Common Issues
Section titled “Common Issues”Bundle not downloading:
- URLが公開アクセス可能かつHTTPSを使用していることを確認してください (モバイルおよびElectronアプリ用)。
- Webアプリ用のCORSヘッダーを確認してください。
- Bundleのフォーマットが正しいことを確認してください。
エラー:
- URLが暗号化されたBundleと一致していることを確認してください。
ivSessionKeyBundleが正しいキーで暗号化されたことを確認してください。 - 新しいBundleの場合、暗号化v2を使用していることを確認してください。
- URLが公開アクセス可能かつHTTPSを使用していることを確認してください (モバイルおよびElectronアプリ用)。
__CAPGO_KEEP_0__
- S3のアップロードエラーが発生しています:
- S3の資格情報と権限を確認してください
- バケットポリシーとCORS設定を確認してください
指定されたリージョンが正しいことを確認してください
__CAPGO_KEEP_1__バンドルステータスを確認:
npx @capgo/cli@latest app debugバンドル整合性を確認:
npx @capgo/cli@latest bundle list次のステップ
「次のステップ」というタイトルのセクション- 学び チャンネル 異なるデプロイ環境を管理する
- 探索 更新の適用方法をカスタマイズする 設定
- CI/CD統合 カスタムストレージワークフローを自動化する カスタムストレージから続けて進む
__CAPGO_KEEP_0__
「カスタム ストレージから続ける」セクションのタイトル__CAPGO_KEEP_0__ を使用している場合 __CAPGO_KEEP_0__ セキュリティとコンプライアンスを計画するために使用している場合は、__CAPGO_KEEP_0__ と接続してください __CAPGO_KEEP_0__ の実装詳細 __CAPGO_KEEP_0__ __CAPGO_KEEP_0__ の実装詳細 __CAPGO_KEEP_0__ セキュリティ スキャナー Capgo セキュリティ スキャナーの製品ワークフロー Capgo セキュリティ Capgo セキュリティの製品ワークフロー Capgo Capgo 信頼センター Capgo 信頼センターの製品ワークフロー用