Skip to content

S3 Storage Configuration

James Fantin-Hardesty edited this page Sep 2, 2025 · 4 revisions

S3 Storage Configuration

You can provide S3-related settings to Cloudfuse in three ways (listed in order of precedence):

  1. Configuration file
  2. Environment variables
  3. AWS shared credential files (~/.aws/credentials and ~/.aws/config)

Note: Environment variables and the AWS shared credential file are intended primarily for authentication. Use the YAML configuration file for persistent settings.

Using a configuration file

Create a YAML config and pass it to the mount command:

cloudfuse mount ./mount --config-file=./config.yaml

Helpful references in this repository:

Example s3storage section (fill with your values):

s3storage:
  # Required
  bucket-name: my-bucket-name

  # Optional (authentication; values here take precedence over env/shared profile)
  key-id: <S3 access key ID>
  secret-key: <S3 secret access key>
  region: <S3 region, e.g. us-east-1>
  profile: <AWS shared profile name (default: "default")>
  endpoint: <S3 endpoint URL (default: https://s3.[region].lyvecloud.seagate.com)>

Environment variables

Cloudfuse supports the usual AWS environment variables for authentication and region. These are useful when you prefer not to store keys in a config file:

  • AWS_ACCESS_KEY_ID
  • AWS_SECRET_ACCESS_KEY
  • AWS_REGION
  • AWS_PROFILE

AWS shared credential files

You may use your existing AWS credentials and config files located at:

  • ~/.aws/credentials
  • ~/.aws/config

If you want to select a non-default profile, either set profile: in the s3storage section of the YAML config, or export AWS_PROFILE in the environment.

Clone this wiki locally