FargateBuildVolumeSize

Build disk size in GiB for the Fargate builder. Only used when BuildMethod is set to fargate.

| Default value | "" | | Allowed values | blank, or a whole number from 21 to 200 |

Use Cases

  • Increasing disk space for Fargate builds that fail with "No space left on device" errors
  • Building images with large base layers or large build contexts that outgrow the Fargate default disk
  • Sizing the builder disk on Racks that build several large images in one Build

Additional Information

This parameter sets the ephemeral storage size on the Fargate build task. It is the Fargate counterpart to BuildVolumeSize, which sizes the EBS volume attached to the ec2 build instance. On a Rack with BuildMethod=ec2 the value is accepted and the Rack updates, but it has no effect on the build disk. Use BuildVolumeSize there instead.

$ convox rack params set FargateBuildVolumeSize=50

A blank value is not sent to the task definition at all, so the build task runs on the Fargate default of 20 GiB. Blank does not mean zero.

20 is not an accepted value. Fargate already provisions 20 GiB, and AWS accepts an explicit ephemeral storage size only from 21 GiB upward. Set 21 or higher to enlarge the disk, or leave the parameter blank to stay at 20 GiB.

Only whole numbers are accepted. A fractional value such as 50.5 is refused at parameter validation.

A value outside the allowed range is rejected during CloudFormation parameter validation, before any resource is updated, so the Rack is left exactly as it was:

$ convox rack params set FargateBuildVolumeSize=20
Updating parameters... ERROR: ValidationError: Parameter FargateBuildVolumeSize failed to satisfy constraint: must be blank or a whole number from 21 to 200

Each Fargate task includes 20 GiB of ephemeral storage at no additional cost, and AWS bills the storage you configure above that. See Fargate task ephemeral storage and AWS Fargate pricing.

The parameter exists only on Rack releases that declare it. On an older Rack it does not appear in convox rack params, and setting it is either dropped silently or rejected with ValidationError: No updates are to be performed. Update the Rack first, then set the value.

Downgrading a Rack to a release that predates this parameter drops it. Upgrading again brings it back blank rather than at the value you had set, so set it again after a downgrade and return trip.

See Also