This documentation covers Convox V2, our ECS-based engine. V2 is fully supported and actively maintained. Looking for the Kubernetes-based V3 engine? See docs.convox.com.
App Parameters
This page covers the V2 engine. V3 version: App Parameters.
An App parameter configures the behavior of a single App, such as its task launch type, networking, logging, and load balancer settings. You set App parameters with convox apps params set ParameterName=Value, scoped to one App rather than the whole Rack. App parameters are distinct from Rack Parameters, which configure shared infrastructure across every App on the Rack.
Setting Parameters
App parameters configure specific behaviors at the application level. Parameters can be set using the following command:
$ convox apps params set ParameterName=Value
Note: When a Rack update adds new App parameters, they become available for each App after its next deployment.
To keep a value across deploys, set it under params: in convox.yml. The deploy that adds or changes it applies the value:
params:
FargateServices: "Yes"
Parameters Set From the Rack
Each deploy or promote of a Generation 2 App sets these parameters to the Rack's value. A value set with convox apps params set lasts only until the App's next deploy or promote. To give one App a different value, set it under params: in convox.yml.
| App parameter | Follows the Rack parameter |
|---|---|
| ECSExec | ECSExec |
| EnableContainerReadonlyRootFilesystem | EnableContainerReadonlyRootFilesystem |
| LogDriver | LogDriver |
| PlaceLambdaInVpc | PlaceLambdaInVpc |
| Private | Private |
| SyslogDestination | SyslogDestination |
| SyslogFormat | SyslogFormat |
Each deploy or promote also sets LogBucket to the Rack's log bucket unless params: in convox.yml sets it. SecretsManagerEnv is on when either the App or the Rack sets it to Yes, unless params: in convox.yml sets it.
Parameters
| Parameter | Default | Description |
|---|---|---|
| AutoMinorVersionUpgrade | true |
Auto-upgrade minor versions for database resources |
| CircuitBreaker | No |
Enable ECS Circuit Breaker deployments |
| ECSExec | No |
Enable ECS Exec for interactive container access |
| EnableContainerReadonlyRootFilesystem | No |
Enable read-only root filesystem for containers |
| FargateServices | No |
Run Services on AWS Fargate |
| FargateTimers | No |
Run timers on AWS Fargate |
| IamPolicy | "" | Custom IAM policy ARN for the task role |
| IgnoreManualScaleCount | No |
Ignore manual scale counts during autoscaling |
| InternalDomains | Yes |
Enable internal domain routing |
| Isolate | No |
Run Services in isolated network configuration |
| LoadBalancerAlgorithm | round_robin |
Load balancer routing algorithm |
| LoadBalancerGrpcSuccessCodes | 12 |
GRPC health check success codes |
| LoadBalancerSuccessCodes | 200-399,401 |
HTTP health check success codes |
| LogBucket | Rack's log bucket | S3 bucket for the App settings bucket's access logs |
| LogDriver | CloudWatch |
Log driver for the application |
| LogRetention | 7 |
Days to retain logs |
| PlaceLambdaInVpc | No |
Place Lambda functions inside the VPC |
| Private | No |
Deploy tasks to private subnets |
| RackUrl | No |
Inject RACK_URL environment variable |
| RedirectHttps | Yes |
Redirect HTTP to HTTPS |
| ResourcePassword | "" | Override password for embedded resources |
| SecretsManagerEnv | No |
Inject environment variables from AWS Secrets Manager |
| SlowStartDuration | 0 |
Ramp-up period for new Services (seconds) |
| SyslogDestination | "" | Syslog endpoint URL |
| SyslogFormat | rfc5424 |
Syslog message format |
| Tags | "" | Custom AWS tags for a Generation 2 App's stack and resources |
| TaskTags | No |
Propagate ECS tags to task level |