Type object
Schema URL https://catalog.lintel.tools/schemas/schemastore/aws-copilot-manifest/_shared/latest--lb-web-service.json
Parent schema aws-copilot-manifest
Type: object

Load Balanced Web Service manifest for AWS Copilot https://aws.github.io/copilot-cli/docs/manifest/lb-web-service/

Properties

name string required

The name of your service.

pattern=^[a-zA-Z][a-zA-Z0-9-]*$
type string required

The architecture type for your service. A Load Balanced Web Service is an internet-facing service that's behind a load balancer, orchestrated by Amazon ECS on AWS Fargate.

Constant: "Load Balanced Web Service"
http boolean | object

The http section contains parameters related to integrating your service with an Application Load Balancer.

nlb object

The nlb section contains parameters related to integrating your service with a Network Load Balancer.

8 nested properties
port string required

Required. The port and protocol for the Network Load Balancer to listen on.

pattern=^\d+(/(?:tcp|udp|tls))?$
healthcheck nlb-healthcheck

Specify the health check configuration for your Network Load Balancer.

target_container string

A sidecar container that takes the place of a service container.

target_port port-value

The container port that receives traffic. Specify this field if the container port is different from nlb.port, the listener port.

ssl_policy string

The security policy that defines which protocols and ciphers are supported. To learn more, see this doc.

stickiness boolean

Indicates whether sticky sessions are enabled.

alias string | string[]

Domain aliases for your service.

additional_listeners nlb-additional-listener[]

Configure multiple NLB listeners.

image image-config

The image section contains parameters relating to the Docker build configuration or referring to an existing container image.

cpu cpu
memory memory
platform platform
count count
exec boolean

Enable running commands in your container. The default is false. Required for $ copilot svc exec.

deployment deployment

The deployment section contains parameters to control how many tasks run during the deployment and the ordering of stopping and starting tasks.

entrypoint entrypoint
command command
sidecars sidecars
network network

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.

env_file string

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.

secrets secrets

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.

storage storage

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.

publish publish

The publish section allows services to publish messages to one or more SNS topics.

logging logging

The logging section contains log configuration. You can also configure parameters for your container's FireLens log driver in this section.

observability observability

The observability section lets you configure ways to measure your service's current state. Currently, only tracing configuration is supported.

taskdef_overrides taskdef-override[]

The taskdef_overrides section allows users to apply overriding rules to their ECS Task Definitions.

environments environments

The environment section lets you override any value in your manifest based on the environment you're in.