Configuration Overview
Become familiar with the configuration options that are available for the IonFS CLI.
S3 Repository Setup
The IonFS S3 repository makes use of the AWS S3 SDK, which can be configured using two main methods:
- Environment variables
- Credentials file
This list should be taken as the order of precedence.
Environment Variables
If the credentials file is not used, then environment variables can be used:
- AWS Access Key:
AWS_ACCESS_KEY_ID
- AWS Secret Key:
AWS_SECRET_ACCESS_KEY
Credentials File
The AWS credentials file is stored within a well-known directory in the user's home folder.
- MacOS/Linux:
~/.aws/credentials
- Windows:
%USERPROFILE%\.aws\credentials
The credentials file is INI formatted, and allows multiple sets of credentials to be used:
Ionburst Cloud Setup
IonFS makes use of the Ionburst SDK, which can be configured using two main methods:
- Environment variables, or
- Credentials file.
This list should be taken as the order of precedence.
Environment Variables
If the credentials file is not used, then environment variables can be used:
- Ionburst API ID:
IONBURST_ID
- Ionburst API Key:
IONBURST_KEY
Credentials File
The Ionburst credentials file is stored within a well-known directory in the user's home folder.
- MacOS/Linux:
~/.ionburst/credentials
- Windows:
%USERPROFILE%\.ionburst\credentials
The credentials file is INI formatted, and allows multiple sets of credentials to be used:
IonFS Setup
IonFS Configuration File
IonFS uses its own configuration file located within a well-known directory in the user's home folder.
- MacOS/Linux:
~/.ionfs/appsettings.json
- Windows:
%USERPROFILE%\.ionfs\appsettings.json
The following is an example of an IonFS configuration:
IonFS Configuration Breakdown
- Within the Repositories section:
- the "Name" value is the desired name for your metadata repo - that can be referenced by the
ionfs
CLI - the "Usage" value is set to either
Data
to act as a repo for S6- or
Secrets
to act as a repo for NKV
- the "Class" value is set to the class of the metadata repository implementation
Ionburst.Apps.IonFS.Repo.S3.MetadataS3
for S3Ionburst.Apps.IonFS.Repo.
for MongoDB
- the "Assembly" value is set to the assembly name of the metadata repository
Ionburst.Apps.IonFS.Repo.S3
for S3Ionburst.Apps.IonFS.Repo.MongoDB
for MongoDB
- the "DataStore" value to the name of the metadata store created to store
ionfs
metadata- for S3, this is the name of the bucket
- for MongoDB, this is the name of the
- the "Name" value is the desired name for your metadata repo - that can be referenced by the
- "DefaultRepository" can be set to the "Name" of a configured repository, to act as the default for
ionfs
- Within the Ionburst section:
- Change the "Profile" value to the profile created in your Ionburst credentials file
- Change the "IonburstUri" value to your desired Ionburst Cloud API endpoint
- Ensure "TraceCredentialsFile" is set to "OFF"
- Within the AWS section:
- Change the "Profile" value to the profile created in your AWS credentials file
- Change the "Region" value to the region your S3 bucket was created in