コンテンツにスキップ

app init

$ copilot app init [name] [flags]

コマンドの概要

copilot app init はコマンドを実行したディレクトリ内に新しい Application を作成します。 Service は Application 内に作成していきます。

質問への回答の後、CLI は、Service 用に作成されたインフラストラクチャーを管理する為の AWS Identity and Access Management ロールを作成します。作業ディレクトリ配下に新しいサブディレクトリ copilot/ を確認できます。 copilot ディレクトリには Service 用の Manifest ファイルと追加のインフラストラクチャーが格納されます。

copilot app init はカスタムドメイン名や AWS タグを利用したい場合、パーミッションバウンダリー用の IAM ポリシーを指定したい場合に利用します。それ以外の典型的なケースでは、同じ動作をする copilot init を利用します。

フラグ

Copilot CLI における全てのコマンドと同じ様に、必要なフラグを指定しなかった場合、必要な情報を全て入力する様に求められます。フラグを指定して情報を指定すると、プロンプトをスキップできます。

      --domain string                  Optional. Your existing custom domain name.
  -h, --help                           help for init
      --permissions-boundary           Optional. The name or ARN of an existing IAM policy with which to set a
                                       permissions boundary for all roles generated within the application.
      --resource-tags stringToString   Optional. Labels with a key and value separated by commas.
                                       Allows you to categorize resources. (default [])
--domain フラグは、 Application が利用している AWS アカウント上の Amazon Route 53 に登録されたドメイン名を指定します。これにより Application 内の全てのサービスが同じドメイン名を利用することが出来るようになります。次の例の様に Service に対してアクセス出来るようになります。https://{svcName}.{envName}.{appName}.{domain}

--permissions-boundary フラグは Application が利用している AWS アカウント上にある IAM ポリシーを指定できます。このポリシー名は、Copilot により作成される全ての IAM ポリシーに付加される ARN 名の一部になります。

--resource-tags フラグは、Application 内の全てのリソースに対してカスタムタグを追加します。 コマンド例: copilot app init --resource-tags department=MyDept,team=MyTeam

実行例

"my-app"という名前の新しい Application を作成します。

$ copilot app init my-app
Route 53 に登録済みの既存ドメイン名を利用して新しい Application を作成します。
$ copilot app init --domain example.com
リソースタグを指定して新しい Application を作成します。
$ copilot app init --resource-tags department=MyDept,team=MyTeam

出力例

Running copilot app init