Obsolète : MinIO

Remarque importante

⚠️ Important : MinIO a cessé son développement sans préavis en octobre 2025. Nous déconseillons donc de continuer à utiliser MinIO.

Vous trouverez nos nouvelles informations sur le stockage objet ici :
Stockage objet →

Pour migrer depuis MinIO, nous avons créé un guide : Migration du stockage objet →

Instructions d'installation MinIO obsolètes

Introduction

minIO est une solution de stockage objet évolutive et performante. Dans Relution, la table resource peut devenir très volumineuse (par exemple en raison des applications natives enregistrées). Pour soulager la base de données, il est recommandé de déplacer ces fichiers d’application dans un bucket S3.

L’image minIO est un conteneur Docker compact et facilement configurable.

⚠️ Important : Incluez le répertoire minIO dans votre routine de sauvegarde. Sans son contenu, le fonctionnement du serveur et la gestion des appareils ne peuvent pas être garantis.

Préparation du docker-compose.yml

Ajoutez un conteneur minIO dans votre docker-compose.yml :

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
  • Remplacez MINIO_ROOT_USER et MINIO_ROOT_PASSWORD par vos propres valeurs.
  • Les données seront stockées localement sous ./volumes/minio/data.

Configuration initiale de minIO

  1. Démarrez le conteneur et ouvrez l’interface web de minIO : 👉 http://localhost:9001 →

  2. Connectez-vous avec les identifiants configurés.

  3. Effectuez les étapes suivantes :

    • Créer un nouveau bucket nommé relution

Configurer Relution

Relution doit savoir que les données seront désormais stockées dans le bucket S3.

Option A : dans application.yml

Ajoutez ces paramètres de configuration dans application.yml :

relution:
  storage:
    resourceStorageType: S3
    s3:
      customEndpoint: http://minio:9000
      accessKey: %ACCESS-KEY-ID%
      secretKey: %SECRET-KEY%
      bucketName: relution

Remplacez %ACCESS-KEY-ID% et %SECRET-KEY% par les valeurs générées précédemment dans le yml, MINIO_ROOT_USER=%USERNAME% et MINIO_ROOT_PASSWORD=%PASSWORD%.

Option B : dans docker-compose.yml

Ajoutez ces variables d’environnement au service relution :

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"

Remplacez %ACCESS-KEY-ID% et %SECRET-KEY% par les valeurs générées précédemment dans le yml, MINIO_ROOT_USER=%USERNAME% et MINIO_ROOT_PASSWORD=%PASSWORD%.

Démarrer les conteneurs

  1. Téléchargez les images :

    docker compose pull
    
  2. Démarrez les conteneurs :

    docker compose up -d
    
  • minIO sera opérationnel en quelques secondes.
  • Relution commence automatiquement à déplacer le contenu de la table resource vers le bucket S3.

Surveiller la progression

Vous pouvez observer le processus de copie avec la commande suivante :

docker logs -f docker_relution

Remarque

⚠️ Ce processus est irréversible (à partir de Relution 5.31.2).

Top