環境
Squid はあなたの作業用に 2 つの環境 – dev と prod – を提供します。
新しいアプリケーションを作成すると、Squid は自動的に dev と prod の環境を設定します。開発やテストには dev 環境を使用してください。アプリケーションを本番公開する準備ができたら prod 環境を利用します。
Shared Between dev and prod | Not Shared Between dev and prod |
|---|---|
| App ID | Connectors |
| Region | Secrets |
| Organization | Built-in database |
| Developer ID | Backend deployments |
| API Keys |
Environments and connectors
Squid Console でアプリの dev と prod バージョンを切り替えると、それぞれ異なるセットの connectors があることに気づくでしょう。
本番アプリの機能に望ましくない変更を加えないように、dev と prod 環境の connectors は同期されません。Squid アプリに connector を追加する際は、目的の環境に追加していることを確認してください。
dev 環境は、開発版の connectors と接続してください。これにより、本番版のアプリケーションを変更することなく、機能の構築やテストが可能になります。
両方の dev と prod 環境で同じ connector ID を選択すると、dev で開発してから prod にプッシュする際、コード内の変数を変更する必要がなくなります。
The dev environment
dev 環境は、prod 環境のアプリケーションとは別個の、完全なバックエンドアプリケーションです。
Running the dev backend locally
Squid Console のアプリケーション概要ページから Squid バックエンドを初期化するとき、dev モードに切り替えるようプロンプトが表示されます。
提供されたターミナルコマンドは、.env ファイルを含む新しいバックエンドを作成します。このファイルには、ローカルでバックエンドを実行するために必要な属性(SQUID_ENVIRONMENT_ID を含む)が記載されています。この値は、バックエンドがどの環境で実行されるかを決定します。
バックエンドディレクトリで以下のコマンドを実行して、バックエンドをローカルで実行してください:
squid start
ローカルで実行中のバックエンドを使ってフロントエンドを動作させるには、フロントエンドの Squid Client SDK 設定に Squid Developer ID を含める必要があります:
<SquidContextProvider
options={{
appId: 'YOUR_APP_ID',
region: 'YOUR_REGION', // example: 'us-east-1.aws'
environmentId: 'dev',
squidDeveloperId: 'YOUR_SQUID_DEVELOPER_ID',
}}
>
<App />
</SquidContextProvider>
Squid Developer ID はローカル開発用です。フロントエンドアプリに developer ID を含めないでください。
The prod environment
Squid アプリケーションの本番環境は、ユーザーが操作するバージョンです。prod バージョンの Squid に connector を追加する際は、サービスの本番版を使用してください。
Deploying your Squid backend
Squid バックエンドをデプロイする際は、どの環境にデプロイするかを選択する必要があります。
dev へデプロイすると、コラボレータが機能をテストできるステージング環境が提供されます。dev バックエンドがデプロイされると、Squid コンテキスト内で squidDeveloperId パラメータを使用せずに、アプリのフロントエンドからライブでアクセスできるようになります。
prod へデプロイすると、ユーザーが操作するバックエンドのライブ版が作成され、これにより既にデプロイされていたバックエンドのバージョンが上書きされます。
バックエンドプロジェクトのディレクトリから以下のコマンドを実行して、dev 環境に Squid バックエンドをデプロイしてください:
squid deploy # OR npm run deploy
バックエンドのバージョンを prod にプッシュする準備ができたら、以下のコマンドを使用してください:
squid deploy --environmentId prod --apiKey YOUR_PROD_API_KEY
'squid deploy' コマンドが実行できない場合は、システムに Squid CLI がインストールされていることを確認してください。
Squid Console の Backend project セクションにある Deploy backend ボタンをクリックすると、あなたの prod デプロイコマンドと prod API キーを確認できます。
Selecting your environment
Environments in the console
コネクタを追加または管理する前に、正しい環境にいるかどうかを確認してください。 Squid Console で環境を切り替えるには、コンソール上部の環境名を選択し、表示したい環境を選んでください。

Environments during development
デフォルトでは、.env ファイル内の environmentId と apiKey は dev に設定されています。そのため、これらのフラグなしでコマンドを実行すると、コマンドは dev 環境を使用します。
バックエンドの環境を変更するには、Squid CLI コマンドで適切なフラグを使用してください。
squid deploy # deploys to dev
squid deploy --environmentId prod --apiKey YOUR_PROD_API_KEY # deploys to prod
アプリのフロントエンドの環境を変更するには、Squid コンテキスト内で適切な environmentId の値を使用してください:
<SquidContextProvider
options={{
appId: 'YOUR_APP_ID',
region: 'YOUR_REGION', // example: 'us-east-1.aws'
environmentId: 'dev', // or 'prod'
}}
>
<App />
</SquidContextProvider>
Key environment variables
環境変数(envars とも呼ばれます)は、開発環境と本番環境の両方でアプリケーションを構成・運用するために不可欠です。
- SQUID_APP_ID: あなたのユニークな Squid アプリケーション識別子。(コマンドラインで使用する場合は
--appId) - SQUID_REGION: 'us-east-1.aws' などのリージョンを指定します。(コマンドラインで使用する場合は
--region) - SQUID_ENVIRONMENT_ID: 作業環境を示し、'dev' または 'prod' のいずれかです。(コマンドラインで使用する場合は
--environmentId) - SQUID_API_KEY: 各環境ごとに異なる API アクセス用のキーです。(コマンドラインで使用する場合は
--apiKey) - SQUID_DEVELOPER_ID: ローカルで Squid バックエンドを実行するために必要な値で、
.envファイルまたは Squid Console で確認できます。(コマンドラインで使用する場合は--squidDeveloperId)
Netlify や GitHub Actions のようなツールを使用した自動デプロイの場合、これらの環境変数はデプロイマシン上、またはデプロイツールの設定内で直接設定することを推奨します。このアプローチは、API Key などの機密情報のセキュリティと管理を強化します。
デプロイマシンまたはプロセス上で変数を設定することにより、開発用と本番用の設定の明確な分離が可能となります。
Security considerations
特に API Key のような機密変数には注意してください。セキュリティリスクを避けるため、これらの情報はクライアントサイドのコードに露出しないようにする必要があります。常にサーバー側または保護された環境変数内で、このような重要な情報を安全に管理してください。
Locate envars in the console
管理を容易にするため、Squid Console から環境変数をコピーできます。この機能は、開発とデプロイの両方において、正確に変数を設定するのに役立ちます。 Squid Console 内の Show env vars ボタンは、これらの変数にアクセスするための便利なツールです。
ローカル開発用の .env ファイルを生成するには、"Create .env file" ボタンをクリックすることもできます。
Undeploying your backend
必要に応じて、アプリからバックエンドを削除できます。Squid Console で Application overview ページに移動し、ページ下部にある Undeploy Backend をクリックしてください。