Exécuter Milvus avec Docker Compose (Linux)

Cette page explique comment lancer une instance Milvus dans Docker à l'aide de Docker Compose.

Prérequis

Installer Milvus

Milvus fournit un fichier de configuration Docker Compose dans le référentiel Milvus. Pour installer Milvus à l'aide de Docker Compose, il suffit d'exécuter

# Download the configuration file
$ wget https://github.com/milvus-io/milvus/releases/download/v3.0.2/milvus-standalone-docker-compose.yaml -O docker-compose.yaml

# Start Milvus
$ sudo docker compose up -d

Creating milvus-etcd  ... done
Creating milvus-minio ... done
Creating milvus-standalone ... done

Déploiement par défaut (v3.0.2) : la commande « docker compose up -d » lance trois conteneurs : milvus-etcd (métadonnées), milvus-minio (stockage d'objets) et milvus-standalone. La file d'attente de messages est Woodpecker (intégrée, avec MinIO / stockage d'objets comme backend WAL); aucun conteneur de file d'attente de messages distinct n'est donc nécessaire.

File d’attente de messages par défaut selon la version :

  • 2.5.x — la file d’attente de messages par défaut est RocksMQ.
  • 2.6.x et versions ultérieures — la file d’attente de messages par défaut est Woodpecker (intégrée).

Téléchargez toujours la dernière configuration Docker Compose pour garantir la compatibilité avec les fonctionnalités de la version 3.0.2.

  • Si vous n’avez pas réussi à exécuter la commande ci-dessus, veuillez vérifier si Docker Compose V1 est installé sur votre système. Si tel est le cas, il vous est conseillé de migrer vers Docker Compose V2, conformément aux remarques figurant sur cette page.

  • Si vous rencontrez des difficultés pour récupérer l’image, contactez-nous à l’adresse community@zilliz.com en précisant les détails du problème, et nous vous fournirons l’assistance nécessaire.

Après le démarrage de Milvus,

  • les conteneurs nommés milvus-standalone, milvus-minio et milvus-etcd sont en cours d’exécution.
    • Le conteneur milvus-etcd n’expose aucun port vers l’hôte et mappe ses données vers le répertoire volumes/etcd du dossier actuel.
    • Le conteneur milvus-minio expose localement les ports 9000 et 9001 avec les identifiants d’authentification par défaut et mappe ses données vers le répertoire volumes/minio du dossier courant.
    • Le conteneur milvus-standalone expose localement les ports 19530 avec les paramètres par défaut et mappe ses données vers le répertoire volumes/milvus du dossier actuel.

Vous pouvez vérifier si les conteneurs sont opérationnels à l’aide de la commande suivante :

$ docker compose ps

NAME                IMAGE   COMMAND                  SERVICE      CREATED         STATUS                   PORTS
milvus-etcd         …       "etcd -advertise-cli…"   etcd         2 minutes ago   Up 2 minutes (healthy)   2379-2380/tcp
milvus-minio        …       "/usr/bin/docker-ent…"   minio        2 minutes ago   Up 2 minutes (healthy)   9000-9001/tcp
milvus-standalone   …       "/tini -- milvus run…"   standalone   2 minutes ago   Up 2 minutes (healthy)   0.0.0.0:9091->9091/tcp, 0.0.0.0:19530->19530/tcp

Vous pouvez également accéder à l’interface Web de Milvus à l’adresse http://127.0.0.1:9091/webui/ pour en savoir plus sur votre instance Milvus. Pour plus de détails, consultez la section Interface Web de Milvus.

(Facultatif) Mise à jour des configurations de Milvus

Pour mettre à jour la configuration de Milvus en fonction de vos besoins, vous devez modifier le fichier ` /milvus/configs/user.yaml ` situé dans le conteneur ` milvus-standalone `.

  1. Accédez au conteneur milvus-standalone.

    docker exec -it milvus-standalone bash
    
  2. Ajoutez des paramètres supplémentaires pour remplacer les paramètres par défaut. La procédure suivante part du principe que vous devez remplacer les paramètres par défaut de ` proxy.healthCheckTimeout`. Pour connaître les éléments de configuration concernés, reportez-vous à la section « Configuration du système ».

    cat << EOF > /milvus/configs/user.yaml
    # Extra config to override default milvus.yaml
    proxy:
      healthCheckTimeout: 1000 # ms, the interval that to do component healthy check
    EOF
    
  3. Redémarrez le conteneur milvus-standalone pour appliquer les modifications.

    docker restart milvus-standalone
    

Arrêter et supprimer Milvus

Vous pouvez arrêter et supprimer ce conteneur comme suit

# Stop Milvus
$ sudo docker compose down

# Delete service data
$ sudo rm -rf volumes

Mise à niveau de Milvus 2.5.x vers la version 2.6.x

Limitations relatives aux files d’attente de messages: lors de la mise à niveau vers Milvus v3.0.2, vous devez conserver votre choix actuel de file d’attente de messages. Le passage d’un système de file d’attente de messages à un autre pendant la mise à niveau n’est pas pris en charge. La prise en charge du changement de système de file d’attente de messages sera disponible dans les versions futures.

La version 2.6.x remplaçant la file d’attente de messages par défaut par Woodpecker, une instance exécutant RocksMQ sous la version 2.5.x doit explicitement verrouiller RocksMQ avant la mise à niveau — sinon, la mise à niveau tenterait de modifier la file d’attente de messages, ce qui n’est pas pris en charge. Après avoir téléchargé le fichier Docker Compose de la version 2.6.x, redéfinissez le type de file d'attente de messages sur « rocksmq » dans votre fichier de redéfinition « user.yaml », puis effectuez la mise à niveau :

# user.yaml — keep RocksMQ across the 2.5.x → 2.6.x upgrade
mq:
  type: rocksmq

Pour changer de file d’attente de messages après la mise à niveau, consultez la section « Changer de file d’attente de messages ».

Dépendances facultatives

Ce déploiement utilise Woodpecker (intégré, backend WAL MinIO) pour la messagerie, etcd pour les métadonnées et MinIO pour le stockage d’objets. Pour utiliser une file d’attente de messages différente ou connecter un stockage d’objets / des métadonnées externes, consultez :

Storage V3 est désactivé par défaut. Activez-le avant d’utiliser les fonctionnalités qui en dépendent. Pour connaître les prérequis et les considérations de compatibilité, consultez la page Storage V3.

Et ensuite

Une fois Milvus installé dans Docker, vous pouvez :

Traduit parDeepL

Office Hours

Heures de bureau à Milvus

Obtenez de l'aide pour le déploiement de la production de la part de Zilliz, les experts de Milvus.

Réservez une session 1:1 gratuite

Essayez Milvus géré gratuitement

Zilliz Cloud est sans souci, propulsé par Milvus et 10 fois plus rapide.

Commencer
Feedback

Cette page a-t - elle été utile ?