infrastructure/roles/minio/README.md
2020-08-10 01:37:13 +02:00

1.7 KiB

Minio

This role provides an easy to use and extend automated setup of S3 compatible object storage.

Since minio only support single-tenant per instance, providing one instance per use-case is the way to go.

It also helps to scale minio in the future. Simply move from group_vars to host vars and distribute your data this way.

Details about multi-tenant support in minio: https://docs.minio.io/docs/multi-tenant-minio-deployment-guide.html

Requirements

You will need to have docker, docker-compose and traefik installed or declared as dependencies with their respective roles.

This role assumes that you have setup traefik with an endpoint called websecure.

Role Variables

Please look at the defaults/main.yml for all available variables and their description.

Note: Lines that are commented out via # are usually still valid/used variables, but they are not defined by default, so they might enable a feature, when uncommenting/defining them!

Global variables, that are used:

  • proxy_network: Defined by the local traefik installation, this is the shared proxy network used by traefik to reach the containers. (optional)
  • proxy_hiddenservice: Defined by the local traefik installation, this is used to generate the alt-svc header for the alternative Tor domain. (optional)

Example config:

group_vars/minio:

---
minio_domain: minio.example.com
minio_users:
  codimd:
    access_key: EXAMPLEgVfvsmjz4KG5tEXAMPLE
    secret_key: EXAMPLEPlTMWneuixqzJDjqTAQSjJgLw92CCgTUf2Hkq9QFq6vMVsHel7EXAMPLE
    browser: "on"

Dependencies

  • docker
  • docker-compose
  • traefik

License

GPL-3.0-only