Name:
interface
Value:
Amplify has re-imagined the way frontend developers build fullstack applications. Develop and deploy without the hassle.

Page updated Apr 30, 2024

Maintenance ModeYou are viewing Amplify Gen 1 documentation. Amplify Gen 1 has entered maintenance mode and will reach end of life on May 1, 2027. New project should use Amplify Gen 2. For existing Gen 1 projects, a migration guide and tooling are available to help you upgrade. Switch to the latest Gen 2 docs →

Amplify CLIで拡張する

Amplify Studioでは、AWS Identity and Access Management (IAM)で設定する必要なく、Amplify CLIのすべての機能を使用できます。Amplify Studioで行った変更は、amplify pullコマンドを実行することでCLIで利用可能にできます。同様に、データモデルまたは認証に対するCLIの変更はAmplify Studioに表示されます。その他のすべてのカテゴリについては、Studioは関連するAWSサービスコンソールへのリンクを提供します。

Amplify Studioを使用したAmplify CLIからの自動ログインプロセスのスクリーンレコーディング

Amplify CLIをインストールするには

  1. ターミナルウィンドウを開き、CLIをインストールします。
npm install -g @aws-amplify/cli
curl -sL https://aws-amplify.github.io/amplify-cli/install | bash && $SHELL
curl -sL https://aws-amplify.github.io/amplify-cli/install-win -o install.cmd && install.cmd

Amplify CLIのインストールが完了したら、AWSアカウントなしで使用できるようにCLIを設定できます。

AWSアカウントなしで使用するようにAmplify CLIを設定するには

Open Amplify Studio. Choose Local setup instructions in the header and copy the amplify pull command.

Amplify pull command being shown after clicking local setup instructions

Open a terminal window and navigate to the directory where you would like to have Amplify setup your project. To initialize Amplify in the current directory, run the following command. Replace the xxx values with your unique appId and envName.

amplify pull --appId xxx --envName xxx

A browser window opens and prompts you to continue logging in to the Amplify CLI. Choose Yes. Screen recording of the auto login process from Amplify CLI using Amplify Studio

Return to the terminal window. You should see the following success statement:

Successfully received Amplify Admin tokens.

The Amplify CLI is now configured and you can use it to provision new cloud backend features.

Amplify CLIでフィーチャーを追加する

Studioセットアップメニューには、CLIを使用してアプリケーションに追加できる関数、ストレージ、APIなどのクラウドバックエンドフィーチャーが表示されます。各バックエンドリソースについて、Studioはターミナルウィンドウで実行するCLIコマンドを表示します。

  1. Studioで、セットアップメニューからストレージまたは関数を選択します。
  2. ストレージページのAmplifyプロジェクトをプルの下から、次のコマンドをコピーしてターミナルウィンドウで実行します。
  3. バックエンド環境がクラウドから正常にプルされた後、ストレージ機能を追加の下から次のコマンドをコピーしてターミナルウィンドウに貼り付けます:
amplify add storage
  1. ターミナルウィンドウのプロンプトに従って、目的の設定でストレージを設定します。
  2. ターミナルウィンドウで次のコマンドを実行して、ローカルバックエンドリソースをビルドしてクラウドにプロビジョニングします:
amplify push
  1. Studioストレージページに戻ります。デプロイされたストレージリソースセクションで新しいストレージリソースへのリンクが利用可能であることを確認します。

Infrastructure-as-Code

Amplify StudioおよびAmplify CLIで作成されたすべてのバックエンドは、AWS CloudFormationを使用してデプロイされます。AWS CloudFormationでは、バックエンド設定をコードとしてリポジトリに格納できます。これには3つの主な利点があります:

  1. Amplifyでは利用できない個別のサービス(例えば、CognitoやDynamoDB)で提供される機能を使用してプロジェクトを拡張する機能。
  2. AWSアカウントとリージョン全体でバックエンド環境を簡単にレプリケートする機能。
  3. Amplifyコンソールで提供されるパイプラインなどのCI/CDパイプラインと簡単に統合する機能。

すべてのバックエンドインフラストラクチャ-as-コード定義は、Amplifyコマンドラインインターフェイス(CLI)を使用してプロジェクトに追加できます。

制限

Amplify Studioは、Amplify CLIで追加された特定のリソースのビルドをサポートしていません:

  1. Lambda関数
  2. リソースオーバーライド

トラブルシューティング

Amplify CLIを使用してAmplify Studioにログインしてもトークンまたはプロンプトが表示されない

この動作は、ターミナルでAmplify CLIamplify pull --appId <appID> --envName <envName>コマンドを実行するときに観察され、ブラウザの新しいタブが開いてAmplify Studioログイン画面が表示されます。ログイン後、リダイレクトされず、CLIが読み込み状態で停止しているように見える場合があります。

この問題を解決するには、

  1. Amplify CLIプロンプトから終了します
  2. 存在する場合は、失敗したプル試行から現在のディレクトリに作成された残存アーティファクト(例:amplifyまたはamplify-backup)を削除します
  3. Amplify CLIamplify pull --appId <appID> --envName <envName>コマンドを再実行します

認証トークン

Amplify CLIを使用する場合、次のエラーメッセージが発生することがあります:

Failed to receive expected authentication tokens. Error: [Error: 'jsonString' argument missing or empty]

このメッセージは、ターミナルでAmplify CLIamplify pull --appId <appID> --envName <envName>コマンドを実行し、CLIへのアクセス許可を付与するときに発生します。

この問題を解決するには、

  1. ~/.amplify/admin/ロケーションにあるconfig.jsonファイルを削除します
  2. 存在する場合は、失敗したプル試行から現在のディレクトリに作成された残存アーティファクト(例:amplifyまたはamplify-backup)を削除します
  3. Amplify CLIamplify pull --appId <appID> --envName <envName>コマンドを再実行します

注意として、~/.amplify/admin/config.jsonのコンテンツはJWTを格納して一時的なAWSクレデンシャルを提供するために使用され、**共有しないでください。

オーバーライドとカスタムリソース

A flag to disable overrides has been detected, please deploy from a different environment. at buildOverrideDir
A flag to disable custom resources has been detected, please deploy from a different environment. at buildResource

上記で述べたエラーは、Amplifyプロジェクトにoverride.tsファイルが含まれている場合や、カスタムリソースがデプロイされている場合のデプロイ中に発生します。Amplify Studioは、オーバーライドファイルまたはカスタムリソースを含むプロジェクトのデプロイをサポートしていません。

このエラーを解決するには、プロジェクトからoverride.tsファイルとカスタムリソースを削除してから、amplify pushを実行します。また、Amplify CLIを使用してリソースをビルドおよびプッシュすることもできます。ただし、Amplify Studioでのデプロイはできません。

UIライブラリ、データマネージャー、ユーザー管理、ファイルブラウザなどのリソースは、この動作の影響を受けません。