Environment

'Environment' Manifest で利用可能なすべてのプロパティのリストです。 Copilot Environment の詳細については、Environment のコンセプトページを参照してください。

Environment のサンプル Manifest
name: prod
type: Environment
observability:
  container_insights: true
name: imported
type: Environment
network:
  vpc:
    id: 'vpc-12345'
    subnets:
      public:
        - id: 'subnet-11111'
        - id: 'subnet-22222'
      private:
        - id: 'subnet-33333'
        - id: 'subnet-44444'
name: qa
type: Environment
network:
  vpc:
    cidr: '10.0.0.0/16'
    subnets:
      public:
        - cidr: '10.0.0.0/24'
          az: 'us-east-2a'
        - cidr: '10.0.1.0/24'
          az: 'us-east-2b'
      private:
        - cidr: '10.0.3.0/24'
          az: 'us-east-2a'
        - cidr: '10.0.4.0/24'
          az: 'us-east-2b'
name: prod-pdx
type: Environment
http:
  public: # 既存の証明書をパブリックロードバランサーに適用します
    certificates:
      - arn:aws:acm:${AWS_REGION}:${AWS_ACCOUNT_ID}:certificate/13245665-cv8f-adf3-j7gd-adf876af95
name: onprem
type: Environment
network:
  vpc:
    id: 'vpc-12345'
    subnets:
      private:
        - id: 'subnet-11111'
        - id: 'subnet-22222'
        - id: 'subnet-33333'
        - id: 'subnet-44444'
http:
  private: # 既存の証明書をプライベートロードバランサーに適用します。
    certificates:
      - arn:aws:acm:${AWS_REGION}:${AWS_ACCOUNT_ID}:certificate/13245665-cv8f-adf3-j7gd-adf876af95
    subnets: ['subnet-11111', 'subnet-22222']
name: cloudfront
type: Environment
cdn: true
http:
  public:
    security_groups:
     ingress: 
       restrict_to:
         cdn: true

name String
Environment の名前。

type String
'Environment' に設定されている必要があります.

network Map
network セクションには、既存の VPC をインポートするためのパラメータ、または Copilot で生成された VPC を設定するためのパラメータが含まれています。

network.vpc Map
vpc セクションには、CIDR 設定やサブネットの設定を行うためのパラメータが含まれています。

network.vpc.id String
The ID of the VPC to import. This field is mutually exclusive with cidr. インポートする VPC の ID。このフィールドは cidr とは排他的です。

network.vpc.cidr String
Copilot が生成した VPC と関連付ける IPv4 CIDR ブロック。このフィールドは id とは排他的です。

network.vpc.subnets Map
VPC にパブリックサブネットとプライベートサブネットを設定します。

例えば、既存の VPC をインポートする場合は、以下のようにします。

network:
  vpc:
    id: 'vpc-12345'
    public:
      - id: 'subnet-11111'
      - id: 'subnet-22222'
または、Copilot で生成された VPC を構成する場合は、以下のようにします。
network:
  vpc:
    cidr: '10.0.0.0/16'
    subnets:
      public:
        - cidr: '10.0.0.0/24'
          az: 'us-east-2a'
        - cidr: '10.0.1.0/24'
          az: 'us-east-2b'

network.vpc.subnets.public Array of Subnets
パブリックサブネットに関する設定のリスト。

network.vpc.subnets.private Array of Subnets
プライベートサブネットに関する設定のリスト。

network.vpc.subnets.<type>.id String
インポートするサブネットの ID。このフィールドは、cidr および az とは排他的です。

network.vpc.subnets.<type>.cidr String
サブネットに割り当てられた IPv4 CIDR ブロック。このフィールドは id とは排他的です。

network.vpc.subnets.<type>.az String
サブネットに割り当てられた可用性ゾーン名です。az フィールドはオプションです。デフォルトでは、Availability Zone はアルファベット順に割り当てられます。このフィールドは、id とは排他的です。

network.vpc.security_group Map
Environment のセキュリティグループに関するルール。

network:
  vpc:
    security_group:
      ingress:
        - ip_protocol: tcp
          ports: 80  
          cidr: 0.0.0.0/0
network.vpc.security_group.ingress Array of Security Group Rules
Environment のインバウンドセキュリティグループに関するルールのリスト。

network.vpc.security-group.egress Array of Security Group Rules
Environment のアウトバウンドセキュリティグループに関するルールのリスト。

network.vpc.security_group.<type>.ip_protocol String
IP プロトコルの名前または番号。

network.vpc.security_group.<type>.ports String or Integer
セキュリティグループルールのポート範囲またはポート番号。

ports: 0-65535

または

ports: 80

network.vpc.security_group.<type>.cidr String
IPv4 アドレスの範囲を CIDR 形式で指定します。

cdn Boolean or Map
The cdn section contains parameters related to integrating your service with a CloudFront distribution. To enable the CloudFront distribution, specify cdn: true. cdn セクションには、CloudFront のディストリビューションと Service の統合に関連するパラメータが含まれています。CloudFront ディストリビューションを有効にするには、cdn: true と指定します。

cdn.certificate String
CloudFront ディストリビューションで HTTPS トラフィックを有効にするための証明書。CloudFront は、インポートした証明書が us-east-1 リージョンにあることが必須です。

http Map
http セクションには、Load Balanced Web Service が共有するパブリックロードバランサーと、Backend Service が共有する内部ロードバランサーを設定するためのパラメーターが含まれています。

http.public Map
パブリックロードバランサーに関する設定。

http.public.certificates Array of Strings
公開されている AWS Certificate Manager の証明書 ARN のリスト。 ロードバランサーにパブリック証明書をアタッチすることで、Load Balanced Web Service をドメイン名と関連付け、HTTPS で到達することができるようになります。http.alias を使用してサービスを再デプロイする方法の詳細については、Developing/Domains ガイドを参照してください。

http.public.access_logs Boolean or Map
Elastic Load Balancing のアクセスログを有効にします。 true を指定した場合、Copilot が S3 バケットを作成し、そこにパブリックロードバランサーがアクセスログを保存するようになります。

http:
  public:
    access_logs: true 
ログのプレフィックスをカスタマイズすることができます。
http:
  public:
    access_logs:
      prefix: access-logs

また、Copilot が作成した S3 バケットを使用するのではなく、自分で作成した S3 バケットを使用することも可能です。

http:
  public:
    access_logs:
      bucket_name: my-bucket
      prefix: access-logs

http.public.access_logs.bucket_name String
アクセスログの保存先となる既存の S3 バケット名。

http.public.access_logs.prefix String
ログオブジェクトのプレフィックス。

http.public.security_groups Map
パブリックロードバランサーに追加するセキュリティグループの設定。

http.public.security_groups.ingress Map
パブリックロードバランサーを許可する Ingress ルール。

http:
  public:
    security_groups:
      ingress: 
        restrict_to:
          cdn: true

http.public.security_groups.ingress.restrict_to Map
Public Load Balancer のトラフィックを制限する Ingress ルール。

http.public.security_groups.ingress.restrict_to.cdn Boolean
パブリックロードバランサーの Ingress トラフィックが CloudFront ディストリビューションから来るように制限するかどうか。

http.private Map
内部ロードバランサーの設定。

http.private.certificates Array of Strings
AWS Certificate Manager の証明書 ARN のリスト。 ロードバランサーにパブリックまたはプライベート証明書をアタッチすることで、Backend Service をドメイン名と関連付け、HTTPS で到達することができます。http.alias を使用して Service を再デプロイする方法の詳細については、Developing/Domains ガイドを参照してください。

http.private.subnets Array of Strings
内部ロードバランサーを配置するサブネット ID。

http.private.security_groups Map
内部ロードバランサーに追加するセキュリティグループの設定。

http.private.security_groupsingress Map
内部ロードバランサーを許可する Ingress ルール。

http:
  private:
    security_groups:
      ingress: # Enable incoming traffic within the VPC to the internal load balancer.
        from_vpc: true

http.private.security_groups.ingress.from_vpc Boolean
VPC 内から内部ロードバランサーへのトラフィックを有効にするかどうか。

observability Map
observability セクションでは、Environment にデプロイされた Service や Job に関するデータを収集する方法を設定します。

observability.container_insights Bool
Environment の ECS クラスターで CloudWatch の Container Insights を有効にするかどうか。