docker安装milvus

docker-compose 安装 milvus

总共安装4个服务

  • etcd : 存储解析milvus的数据
  • minio : 文件服务器
  • milvus : 主要的向量数据库
  • attu : milvus的可视化界面工具

docker-compose 安装

其他3个服务不同版本差距不大,

但是不同版本的milvus差距很大

我的milvus版本为: milvusdb/milvus:v2.3.12

version: '3.5'
 
services:
  etcd:
    container_name: milvus-etcd
    image: quay.io/coreos/etcd:v3.5.5
    environment:
      - ETCD_AUTO_COMPACTION_MODE=revision
      - ETCD_AUTO_COMPACTION_RETENTION=1000
      - ETCD_QUOTA_BACKEND_BYTES=4294967296
      - ETCD_SNAPSHOT_COUNT=50000
    volumes:
      - ${DOCKER_VOLUME_DIRECTORY:-.}/volumes/etcd:/etcd
    command: etcd -advertise-client-urls=http://127.0.0.1:2379 -listen-client-urls http://0.0.0.0:2379 --data-dir /etcd
    healthcheck:
      test: ["CMD", "etcdctl", "endpoint", "health"]
      interval: 5s
      timeout: 3s
      retries: 10
 
  minio:
    container_name: milvus-minio
    image: minio/minio:RELEASE.2022-11-29T23-40-49Z
    environment:
      MINIO_ACCESS_KEY: minioadmin
      MINIO_SECRET_KEY: minioadmin
    ports:
      - "9001:9001"
      - "9002:9000"
    volumes:
      - ${DOCKER_VOLUME_DIRECTORY:-.}/volumes/minio:/minio_data
    command: minio server /minio_data --console-address ":9001"
    healthcheck:
      test: ["CMD", "curl", "-f", "http://localhost:9000/minio/health/live"]
      interval: 5s
      timeout: 5s
      retries: 10
 
  standalone:
    container_name: milvus-standalone
    image: milvusdb/milvus:v2.3.12
    command: ["milvus", "run", "standalone"]
    security_opt:
    - seccomp:unconfined
    environment:
      ETCD_ENDPOINTS: etcd:2379
      MINIO_ADDRESS: minio:9000
    volumes:
      - ${DOCKER_VOLUME_DIRECTORY:-.}/volumes/milvus:/var/lib/milvus
    healthcheck:
      test: ["CMD", "curl", "-f", "http://localhost:9091/healthz"]
      interval: 30s
      start_period: 90s
      timeout: 20s
      retries: 3
    ports:
      - "19530:19530"
      - "9091:9091"
    depends_on:
      - "etcd"
      - "minio"
  
  attu:
    container_name: attu
    image: zilliz/attu:v2.3.9
    environment: 
      MILVUS_URL: milvus-standalone:19530
    ports:
      - "3000:3000"
    depends_on:
      - "standalone"
 
 
networks:
  default:
    name: milvus

如果本机有网络,那就直接在本机执行 docker-compose up -d 安装即可;

如果本机没网络,那就去别的有网络的地方下载docker镜像,然后转移到本机;

如果找不到镜像,可以去以下几个网站找一下

https://docker.1ms.run
https://docker.xuanyuan.me
https://dislabaiot.xyz
https://docker.sunzishaokao.com
https://hub.rat.dev
https://doublezonline.cloud
https://dislabaiot.xyz
https://xdark.top

启动成功应该显示如下

启动命令:docker-compose up -d

此时启动,milvus-standalone 服务可能跑不起来,或者跑十几秒就挂了,因为他连不上minio文件服务器,此时我们需要打开浏览器,连接 服务器ip:9001,登录minio管理界面,在bucket列表,生成一个a-bucket的桶,并设置为public;

docker restart milvus-standalone

应该成功了,查看容器允许信息;

docker ps

c10b8405b683   milvusdb/milvus:v2.3.12                     "/tini -- milvus run…"   21 minutes ago   Up 21 minutes (healthy)   0.0.0.0:9091->9091/tcp, :::9091->9091/tcp, 0.0.0.0:19530->19530/tcp, :::19530->19530/tcp   milvus-standalone
62497dda89e3   quay.io/coreos/etcd:v3.5.5                  "etcd -advertise-cli…"   21 minutes ago   Up 21 minutes (healthy)   2379-2380/tcp                                                                              milvus-etcd
059b5e105d2d   minio/minio:RELEASE.2022-11-29T23-40-49Z    "/usr/bin/docker-ent…"   21 minutes ago   Up 21 minutes (healthy)   0.0.0.0:9001->9001/tcp, :::9001->9001/tcp, 0.0.0.0:9002->9000/tcp, :::9002->9000/tcp       milvus-minio
92df20ce7923   zilliz/attu:v2.3.9                          "docker-entrypoint.s…"   23 hours ago     Up 23 hours               0.0.0.0:3000->3000/tcp, :::3000->3000/tcp                                                  attu

可视化界面

访问attu: 浏览器输入 ip:3000

踩坑记录

端口占用

运行的时候,发现端口被占用,导致起不动,记得用命令:netstat -ntulp|grep 你的端口 来检测是否被占用端口;

必须要开放出去的端口 : 9001-minio的端口,需要我们启动后设置信息;3000-attu端口,可视化界面;19530-milvus端口,核心服务;

milvus访问minio

重点

当前docker-compose,指定的这四个容器是在同一网络下,

networks:
  default:
    name: milvus

因此,下面这行的端口,要用容器本身的端口9000,不能用映射出来的9002

 MINIO_ADDRESS: minio:9000

提示:如果你的网络模式是host,或者bridge,这里访问的信息就要改成:

MINIO_ADDRESS: 你的宿主机IP:你本机映射的端口
posted @ 2025-04-15 18:13  窃窃私语QAQ  阅读(99)  评论(0)    收藏  举报