news 2026/10/31 2:12:25

Linux中部署Milvus保姆级教程

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Linux中部署Milvus保姆级教程

一、安装Docker

安装文档:如何安装Docker_cent 怎样安装 docker-CSDN博客

安装完成后,启动如下:

注意:如果是《使用 Docker Compose 运行 Milvus(Linux)》,那么需要检查是否存在docker compose

docker compose version

二、在 Docker 中运行 Milvus(Linux)

此方案是在 Docker 中启动一个 Milvus 实例

官网地址:https://milvus.io/docs/zh/install_standalone-docker.md

2.1 创建工作目录

mkdir -p /docker-milvus && cd /docker-milvus

后续数据、配置都会落在该目录下

2.2 下载官方启动脚本

2.2.1 URL 结构介绍

https://raw.githubusercontent.com/milvus-io/milvus/<分支或标签>/scripts/standalone_embed.sh

URL 里的段含义

master

始终跟仓库最新脚本(官方文档默认这样写)

v3.0.4、v2.6.26等

固定到某个 Git Tag / Release

若curl或拉镜像很慢/失败,多半是网络问题,需配置 Docker 镜像加速后再执行。


本文下面将以版本v2.6.26为例


2.2.2 下载v2.6.26版本

curl -sfL https://raw.githubusercontent.com/milvus-io/milvus/v2.6.26/scripts/standalone_embed.sh -o standalone_embed.sh

2.2.3下载失败解决方法

参数作用

-s

不显示进度

-f

HTTP 失败(超时、连不上、404)时不报错、不写有效文件

-L

跟随跳转

服务器访问raw.githubusercontent.com经常超时/被墙。失败时 curl 静默退出,ls就是空的。


去掉 -sf

curl -L https://raw.githubusercontent.com/milvus-io/milvus/v2.6.26/scripts/standalone_embed.sh -o standalone_embed.sh

一句话:-sf只是把失败藏起来;带-sf那次是秒失败,不带那次是 4 秒拉成功,根因是访问 GitHub 不稳定,不是少写了两个字母才“解锁”下载。

2.3 启动 Milvus

cd /docker-milvus
bash standalone_embed.sh start

脚本大致会做这些事:

1. 生成 embedEtcd.yaml、user.yaml(若不存在)

2. 启动容器 milvus-standalone

3. 数据目录挂载到当前目录 volumes/milvus

4. 映射端口 19530(客户端)、9091(健康检查/WebUI);部分版本还会映射 2379(内嵌 etcd)

5. 等待容器变为 healthy 后提示启动成功

注意:首次启动常会 docker pull 镜像,耗时取决于网络;若长时间无新输出,见 2.8 常见问题。


脚本输出的Wait for Milvus Starting...说明它在循环检查服务是否健康,最后输出了Start successfully.,说明三大组件全部成功运行,且通过了内部健康检查。

2.4 验证是否启动成功

2.4.1 查看容器

docker ps

应能看到 milvus-standalone,状态最好为 healthy(刚启动可能先是 starting),端口类似:

- 0.0.0.0:19530->19530/tcp

- 0.0.0.0:9091->9091/tcp

2.4.2 健康检查(上面成功就可略)

curl -f http://127.0.0.1:9091/healthz

返回ok说明 Milvus 的 standalone 实例已经起来了,至少 HTTP 健康检查这一层是通的。

2.5 目录与配置说明

启动成功后,/docker-milvus 下大致如下:

/docker-milvus/

├── standalone_embed.sh # 启停脚本

├── embedEtcd.yaml # 内嵌 etcd 配置(脚本生成)

├── user.yaml # 自定义配置(可按需修改)

└── volumes/

└── milvus/ # 数据目录(重要,勿随意删除)


修改 user.yaml 后需重启生效:

bash standalone_embed.sh stop

bash standalone_embed.sh start

2.6 常用命令(可以用等效的 Docker命令替换)

均在 /docker-milvus 目录下执行:

2.6.1启动

bash standalone_embed.sh start

2.6.2停止

bash standalone_embed.sh stop

2.6.3重启

bash standalone_embed.sh restart

2.6.4升级

bash standalone_embed.sh upgrade

(默认会再拉 master 脚本,生产环境慎用)

2.6.5删除容器和数据

bash standalone_embed.sh delete

(危险,需确认)

2.6.6查看日志

docker logs -f milvus-standalone

2.7开通外网访问

入方向放行 TCP 19530

此处就不打码了,为测试服务器。有幸的小伙伴可以连接学习(服务器还启动的情况下😃)

2.8**如何修改密码** 关键

①进入对应目录

cd /docker-milvus

②编辑user.yaml写入下面内容

common: security: authorizationEnabled: true

③停止服务

bash standalone_embed.sh stop

④重启服务

bash standalone_embed.sh start

这样启动后,默认密码为:Milvus

⑤确认健康

curl -f http://127.0.0.1:9091/healthz

返回OK再往下。

⑥生成改密脚本(密码可自行修改)

此处新密码是:milvus@2026!

from pymilvus import connections, utility connections.connect( alias="default", host="127.0.0.1", port="19530", user="root", password="Milvus", ) utility.reset_password("root", "Milvus", "milvus@2026!") print("密码修改成功") connections.disconnect("default") connections.connect( alias="default", host="127.0.0.1", port="19530", user="root", password="milvus@2026!", ) print(utility.list_collections()) print("新密码登录成功")

⑦在服务器上准备 Python 环境

# 升级 pip 并换用清华源安装 pymilvus pip3 install --upgrade pip -i https://pypi.tuna.tsinghua.edu.cn/simple pip3 install pymilvus -i https://pypi.tuna.tsinghua.edu.cn/simple

⑧执行改密

python3 /docker-milvus/change_milvus_pwd.py

成功时应看到:密码修改成功、新密码登录成功。
之后登录用:用户名root,密码milvus@2026!。

三、下载图形化工具Attu

仓库:https://github.com/zilliztech/attu

中文说明:attu/README_CN.md at main · zilliztech/attu · GitHub

下载地址:Releases · zilliztech/attu · GitHub


打开下载地址,这里选择最新的版本v3.0.1,然后滑到最下方,选择合适的版本

3.1切换成中文

①点击Settings

②选择语言:中文

3.2连接

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/10/31 2:12:15

ModBus

CRC16校验算法private void crc16(byte[] data){int[] temdata new int[data.Length 2];int xda, xdapoly;int i, j, xdabit;xda 0xFFFF;xdapoly 0xA001;for (i 0; i < data.Length - 2; i){xda ^ data[i];for (j 0; j < 8; j){xdabit (int)(xda & 0x01);xda …

作者头像 李华
网站建设 2026/10/31 2:12:12

激光技术从实验室走向万物互联的历程

理论奠基 01 量子理论的诞生 1900年&#xff1a;马克斯普朗克提出能量量子化假说&#xff0c;解释了黑体辐射问题&#xff0c;为量子力学奠基。1917年&#xff1a;爱因斯坦在《关于辐射的量子理论》中提出受激辐射&#xff08;Stimulated Emission&#xff09;概念&#xff0c;…

作者头像 李华
网站建设 2026/10/31 2:11:07

2026年公司文件共享服务器搭建指南:告别Windows共享和NAS的维护噩梦

文章目录一、传统文件服务器的三大痛点二、方案对比&#xff1a;四种文件服务器的总拥有成本三、坚果云「零维护文件服务器」搭建流程3.1 第一步&#xff1a;创建公司文件架构3.2 第二步&#xff1a;按部门创建群组3.3 第三步&#xff1a;设置文件夹权限3.4 第四步&#xff1a;…

作者头像 李华
网站建设 2026/10/31 2:11:01

接口返回成功,为什么业务却没完成?

栈外&#xff0c;就是跳出代码栈。不只盯着代码本身&#xff0c;同时去看项目落地、技术选型、行业现状&#xff0c;以及开发者容易踩的那些坑。接口返回了成功&#xff0c;用户却迟迟拿不到结果。这类问题在业务系统里并不少见。 比如&#xff0c;用户提交了一份导出任务&…

作者头像 李华
网站建设 2026/10/31 2:10:04

企业微信二次开发如何实现客户消息触发业务查询并自动返回结果

在企业微信二次开发项目里&#xff0c;客户经常会通过单聊或外部群发起业务查询。 例如客户发送“查订单”“查物流”“查询售后进度”&#xff0c;如果每次都需要人工查询再回复&#xff0c;处理效率会比较低。 通过星云API接入消息能力后&#xff0c;可以将客户消息与内部业…

作者头像 李华