Aleph

How to Set Up a Storage Provider for Development

When making changes to file storage in Aleph, it can be helpful to test changes against a real storage provider. This guide describes how to run the MinIO object storage provider in your local development environment and how to configure Aleph accordingly.

This guide describes how to set up MinIO in a development environment. If you want to configure a production Aleph instance to use a storage provider, please refer to our operations guide.
  1. Run the following command to start a single-node MinIO instance for development:

    docker run -p "9000:9000" -p "9001:9001" quay.io/minio/minio minio server --console-address :9001 /mnt/data
  2. You can access the MinIO console at http://localhost:9001. Log in using the default credentials minioadmin/minioadmin.

  3. In order to create a new bucket, click on “Buckets” in the sidebar, then click on “Create Bucket”.

  4. Enter aleph-archive as the bucket name and click on “Create Bucket”.

  5. Set the following Aleph configuration options:

    Configuration optionValue
    ARCHIVE_TYPEs3
    ARCHIVE_BUCKETaleph-archive
    ARCHIVE_ENDPOINT_URLhttp://host.docker.internal:9000
    AWS_ACCESS_KEY_IDminioadmin
    AWS_SECRET_ACCESS_KEYminioadmin
  6. Restart Aleph.

Usually, Docker Desktop automatically adds an entry in /etc/hosts to resolve host.docker.internal. If host.docker.internal can’t be resolved, you may need to manually add an entry to /etc/hosts:

127.0.0.1 host.docker.internal