Veraltet: MinIO
Neue Infos für Objektspeicher gibt es hier:
Objektspeicher →
Für die Migration von MinIO haben wir eine Anleitung erstellt: Objektspeicher-Migration →
Veraltete MinIO-Installationsanleitung
Einleitung
minIO ist eine skalierbare, objektbasierte Speicherlösung mit hoher Performance.
Bei Relution kann die Tabelle resource sehr groß werden (z. B. durch gespeicherte native Apps).
Um die Datenbank zu entlasten, empfiehlt es sich, diese App-Dateien in ein S3 Bucket auszulagern.
Das minIO Image ist ein kompakter, leicht konfigurierbarer Docker-Container.
Vorbereitung der docker-compose.yml
Einen minIO-Container in der eigenen docker-compose.yml hinzufügen:
services:
minio:
image: "quay.io/minio/minio:latest"
restart: always
ports:
- "9001:9001"
expose:
- 9000
environment:
MINIO_ROOT_USER: "%USERNAME%"
MINIO_ROOT_PASSWORD: "%PASSWORD%"
command: server --console-address ":9001" /data
networks:
relution-network:
aliases:
- minio
volumes:
- ./volumes/minio/data:/data
MINIO_ROOT_USERundMINIO_ROOT_PASSWORDdurch eigene Werte ersetzen.- Daten werden lokal unter
./volumes/minio/datagespeichert.
minIO initial einrichten
Den Container starten und das minIO Webinterface öffnen: 👉 http://localhost:9001 →
Mit den festgelegten Zugangsdaten anmelden.
Folgende Schritte durchführen:
- Neues Bucket mit dem Namen
relutionerstellen
- Neues Bucket mit dem Namen
Relution konfigurieren
Relution muss wissen, dass die Daten künftig im S3-Bucket gespeichert werden.
Option A: in application.yml
In der application.yml diese Konfigurationsparameter hinzufügen:
relution:
storage:
resourceStorageType: S3
s3:
customEndpoint: http://minio:9000
accessKey: %ACCESS-KEY-ID%
secretKey: %SECRET-KEY%
bucketName: relution
%ACCESS-KEY-ID% und %SECRET-KEY% durch die zuvor in der yml erzeugten Werte MINIO_ROOT_USER=%USERNAME% und MINIO_ROOT_PASSWORD=%PASSWORD% ersetzen.
Option B: in docker-compose.yml
Im Service relution diese Umgebungsvariablen hinzufügen:
services:
relution:
environment:
RELUTION_STORAGE_RESOURCESTORAGETYPE: "S3"
RELUTION_STORAGE_S3_CUSTOMENDPOINT: "http://minio:9000"
RELUTION_STORAGE_S3_ACCESSKEY: "%ACCESS-KEY-ID%"
RELUTION_STORAGE_S3_SECRETKEY: "%SECRET-KEY%"
RELUTION_STORAGE_S3_BUCKETNAME: "relution"
%ACCESS-KEY-ID% und %SECRET-KEY% durch die zuvor in der yml erzeugten Werte MINIO_ROOT_USER=%USERNAME% und MINIO_ROOT_PASSWORD=%PASSWORD% ersetzen.
Container starten
Die Images laden:
docker compose pullDie Container starten:
docker compose up -d
- minIO ist nach wenigen Sekunden einsatzbereit.
- Relution beginnt automatisch, Inhalte aus der
resource-Tabelle in das S3 Bucket zu verschieben.
Fortschritt überwachen
Der Kopiervorgang lässt sich mit folgendem Befehl beobachten:
docker logs -f docker_relution