latest--backend-service
shared| Type | object |
|---|---|
| Schema URL | https://catalog.lintel.tools/schemas/schemastore/aws-copilot-manifest/_shared/latest--backend-service.json |
| Parent schema | aws-copilot-manifest |
Backend Service manifest for AWS Copilot https://aws.github.io/copilot-cli/docs/manifest/backend-service/
Properties
The name of your service.
The architecture type for your service. Backend Services are not reachable from the internet, but can be reached with service discovery from your other services.
The http section contains parameters related to integrating your service with an internal Application Load Balancer.
12 nested properties
Requests to this path will be forwarded to your service. Each Backend Service should listen on a unique path.
Optional. The container port that receives traffic. By default, this will be image.port if the target container is the main container, or sidecars.
The ARN or name of an existing internal ALB to import. Listener rules will be added to your listener(s). Copilot will not manage DNS-related resources like certificates.
The amount of time to wait for targets to drain connections during deregistration. The default is 60s. Setting this to a larger value gives targets more time to gracefully drain connections, but increases the time required for new deployments. Range 0s-3600s.
A sidecar container that requests are routed to instead of the main service container. If the target container's port is set to 443, then the protocol is set to HTTPS so that the load balancer establishes TLS connections with the Fargate tasks using certificates that you install on the target container.
Indicates whether sticky sessions are enabled.
CIDR IP addresses permitted to access your service.
HTTPS domain alias of your service.
ID of existing private hosted zone, into which Copilot will insert the alias record once the internal load balancer is created, mapping the alias name to the LB's DNS name. Must be used with alias.
The HTTP(S) protocol version. Must be one of 'grpc', 'http1', or 'http2'. If omitted, then 'http1' is assumed. If using gRPC, please note that a domain must be associated with your application.
Configure multiple ALB listener rules.
The image section contains parameters relating to the Docker build configuration or referring to an existing container image.
Enable running commands in your container. The default is false. Required for $ copilot svc exec.
The deployment section contains parameters to control how many tasks run during the deployment and the ordering of stopping and starting tasks.
The network section contains parameters for connecting to AWS resources in a VPC.
Key-value pairs that represent environment variables that will be passed to your service. Copilot will include a number of environment variables by default for you.
The path to a file from the root of your workspace containing the environment variables to pass to the main container. For more information about the environment variable file, see Considerations for specifying environment variable files.
Key-value pairs that represent secret values from AWS Systems Manager Parameter Store or AWS Secrets Manager that will be securely passed to your service as environment variables.
The Storage section lets you specify external EFS volumes for your containers and sidecars to mount. This allows you to access persistent storage across availability zones in a region for data processing or CMS workloads. For more detail, see the storage page. You can also specify extensible ephemeral storage at the task level.
The publish section allows services to publish messages to one or more SNS topics.
The logging section contains log configuration. You can also configure parameters for your container's FireLens log driver in this section.
The observability section lets you configure ways to measure your service's current state. Currently, only tracing configuration is supported.
The taskdef_overrides section allows users to apply overriding rules to their ECS Task Definitions.
The environment section lets you override any value in your manifest based on the environment you're in.