Skip to main content

File storage

NucliaDB connects to different external blob storage services to store the binaries of the files that are pushed to it. This document focuses on explaining the configuration details about the supported file storage backends.

The supported backends are:

Amazon S3

To configure NucliaDB to use S3 as file backend, you need the following settings:

env:
file_backend: s3
s3_region_name: us-east-2
s3_bucket: ndb-{kbid}-aws-us-east-2-1
s3_client_id: <s3-client-id>
s3_client_secret: <s3-client-secret>
s3_endpoint: <s3-endpoint>
s3_region_name: <s3-region-name>
s3_bucket: nucliadb-{kbid}

Alternately, you can leverage Amazon's IRSA auth mechanism and simply configure NucliaDB with:

env:
file_backend: s3
s3_region_name: <s3-region>
s3_irsa: enabled
s3_bucket: nucliadb-{kbid}

Google Cloud Storage

To configure NucliaDB to use GCS as file backend, you need the following values in the chart's env key:

env:
file_backend: gcs
gcs_base64_creds: <base64-encoded-json-credentials>
gcs_bucket: nucliadb-{kbid}
gcs_location: <gcs-location>
gcs_project: <gcs-project-id>

Azure Blob Storage

To configure NucliaDB to use Azure blob storage as file backend, you need the following values in the chart's env key:

env:
file_backend: azure
azure_account_url: "https://<storageaccountname>.blob.core.windows.net"

Internally, the Azure driver uses the default credential auth mechanism from Azure. So as long as the running environment is correctly configured, the integration should be seamless.