S3
Cache tiles as objects in an AWS S3 bucket.
Ensure the user you’re using has proper permissions for reading and writing objects in the bucket. The permissions required are the minimal set you’d expect: GetObject and PutObject. It’s highly recommended to also grant ListBucket permissions, otherwise the log will contain misleading 403 error messages for every cache miss. Also ensure the user has access to the KMS key if using bucket encryption.
If you’re using a Directory Bucket AKA Express One Zone there’s a few things to configure:
-
Ensure
storageclass
is set to "EXPRESS_ONEZONE" -
The bucket contains the full name including suffix. For example:
my-tilegroxy-cache--use1-az6--x-s3
Name should be "s3"
Configuration options:
Parameter | Description | Type | Required | Default |
---|---|---|---|---|
bucket |
The name of the bucket to use |
string |
Yes |
None |
path |
The path prefix to use for storing tiles |
string |
No |
/ |
region |
The AWS region containing the bucket. Required if region is not specified via other means. Consult AWS documentation for possible values |
string |
No |
None |
access |
The AWS Access Key ID to authenticate with. This is not recommended; it is offered as a fallback authentication method only. Consult AWS documentation for better options |
string |
No |
None |
secret |
The AWS Secret Key to authenticate with. This is not recommended; it is offered as a fallback authentication method only. Consult AWS documentation for better options |
string |
No |
None |
profile |
The profile to use to authenticate against the AWS API. Consult AWS documentation for specifics |
string |
No |
None |
storageclass |
The storage class to use for the object. You probably can leave this blank and use the bucket default. Consult AWS documentation for an overview of options. The following are currently valid: STANDARD REDUCED_REDUNDANCY STANDARD_IA ONEZONE_IA INTELLIGENT_TIERING GLACIER DEEP_ARCHIVE OUTPOSTS GLACIER_IR SNOW EXPRESS_ONEZONE |
string |
No |
STANDARD |
endpoint |
Override the S3 API Endpoint we talk to. Useful if you’re using S3 outside AWS or using a directory bucket |
string |
No |
AWS Auto |
Example:
cache:
name: s3
bucket: my-cache--use1-az6--x-s3
endpoint: "https://s3express-use1-az6.us-east-1.amazonaws.com"
storageclass: EXPRESS_ONEZONE
region: us-east-1
profile: tilegroxy_s3_user