当前位置: 首页 > article >正文

Docker Compose一键部署Milvus单机版(附Attu可视化工具)

1. 环境准备与前置条件在开始部署Milvus单机版之前我们需要确保本地开发环境满足基本要求。我建议使用Ubuntu 20.04或CentOS 7以上版本的操作系统这两个发行版对Docker的支持最为完善。实测下来Windows系统通过WSL2也能运行但可能会遇到文件权限问题新手建议优先选择Linux环境。必须安装的组件清单Docker Engine 20.10.5Docker Compose 2.0.0至少4GB可用内存8GB更稳妥10GB以上磁盘空间安装Docker时有个小技巧直接使用官方的一键安装脚本最省事。在终端执行以下命令curl -fsSL https://get.docker.com | sh sudo systemctl enable --now docker安装完成后建议将当前用户加入docker组避免每次都要sudosudo usermod -aG docker $USER newgrp docker验证Docker是否安装成功docker --version docker-compose --version docker run hello-world如果看到Hello from Docker!的提示信息说明基础环境已经就绪。我遇到过不少初学者卡在权限问题上如果遇到permission denied错误记得检查用户组配置。2. 获取并配置Docker Compose文件Milvus官方提供了开箱即用的docker-compose.yml模板但直接使用原版可能会遇到端口冲突问题。这里我分享一个优化版的配置方案已经调整了健康检查参数和存储卷设置。首先下载官方模板并重命名wget https://github.com/milvus-io/milvus/releases/download/v2.3.1/milvus-standalone-docker-compose.yml -O docker-compose.yml这个文件定义了三个关键服务etcd负责存储集合schema、索引定义等元数据minio对象存储服务保存实际的向量数据milvus-standalone主服务进程我强烈建议修改volumes配置将容器内数据持久化到宿主机特定目录。比如在文件顶部添加x-docker-volume: docker-volume type: none device: ./milvus_data o: bind对于开发环境可以调低etcd的存储配额原配置4GB可能过大environment: - ETCD_QUOTA_BACKEND_BYTES1073741824 # 改为1GB3. 启动核心组件执行部署命令前先确认端口是否被占用。Milvus默认使用以下端口19530gRPC服务端口9091HTTP健康检查端口2379etcd服务端口9000/9001minio API和管理界面启动命令非常简单docker-compose up -d第一次启动时会下载约1.5GB的镜像具体耗时取决于网络状况。我建议在命令后添加--pull always参数确保获取最新镜像docker-compose up -d --pull always验证服务状态时不要只看容器是否运行要确认健康检查通过docker-compose ps理想状态下应该看到三个服务的State都是healthy。如果某个服务反复重启可以查看具体日志docker-compose logs -f etcd4. 安装Attu可视化工具Attu是Milvus官方推出的管理客户端比命令行工具友好得多。部署时要注意版本兼容性必须与Milvus主版本匹配。对于2.3.1版本应该使用docker run -d \ --nameattu \ -p 8000:3000 \ -e MILVUS_URLlocalhost:19530 \ zilliz/attu:v2.3.1如果Milvus运行在远程服务器上需要修改MILVUS_URL环境变量-e MILVUS_URL服务器IP:19530访问Attu时有个常见坑点浏览器缓存可能导致界面加载异常。建议首次访问时使用Chrome隐身模式访问地址http://localhost:8000如果遇到空白页面强制刷新(CtrlF5)5. 验证与基础操作成功登录Attu后我们可以进行端到端验证。首先创建测试集合点击Create Collection输入集合名称如test_collection添加字段idInt64主键embeddingFloatVector维度设为128点击Create插入测试数据时Attu的批量导入功能非常实用。准备一个JSON文件示例[ {id: 1, embedding: [0.1, 0.2, ..., 0.128]}, {id: 2, embedding: [0.3, 0.4, ..., 0.128]} ]建立索引是提升查询性能的关键步骤。在Attu中进入Index标签页选择IVF_FLAT索引类型设置nlist参数为100根据数据量调整点击Create执行向量搜索测试时注意选择正确的度量类型如L2或IP。我建议先用小批量数据验证确认延迟符合预期后再扩展。6. 数据持久化与备份虽然Docker Compose已经配置了卷映射但还需要定期备份关键数据etcd数据位于./milvus_data/volumes/etcdminio数据位于./milvus_data/volumes/minio备份etcd的实用命令docker-compose exec etcd etcdctl snapshot save /etcd/snapshot.dbminio数据可以直接打包备份tar czvf minio_backup.tar.gz ./milvus_data/volumes/minio恢复数据时要注意停服操作docker-compose down # 恢复数据文件 docker-compose up -d7. 性能调优建议单机版部署虽然简单但通过合理配置仍能提升性能。根据我的实测经验建议调整以下参数milvus-standalone服务environment: - COMMON_CACHE_SIZE4GB # 根据内存调整 - COMMON_STORAGE_TYPElocal # 使用本地SSD时设置minio优化command: minio server /minio_data --console-address :9001 --quiet对于开发环境可以关闭部分日志减少IO压力environment: - LOG_LEVELerror监控服务资源使用情况docker stats milvus-standalone milvus-minio milvus-etcd8. 常见问题排查容器启动失败检查端口冲突netstat -tulnp | grep 端口号查看详细日志docker-compose logs --tail100Attu连接超时确认Milvus服务IP是否正确检查防火墙设置验证网络连通性telnet IP 19530性能下降使用top命令查看CPU/内存使用检查磁盘IOiostat -x 1清理缓存echo 3 /proc/sys/vm/drop_caches我在实际项目中遇到过minio存储空间不足的问题建议定期检查docker-compose exec minio mc du /minio_data9. 进阶配置技巧对于需要长期运行的场景建议启用日志轮转logging: driver: json-file options: max-size: 100m max-file: 3如果需要修改时区配置environment: - TZAsia/Shanghai安全加固建议修改minio默认凭证限制etcd访问IP启用Milvus身份验证配置示例environment: - MINIO_ACCESS_KEY自定义账号 - MINIO_SECRET_KEY复杂密码 - ETCD_LISTEN_CLIENT_URLShttp://0.0.0.0:237910. 资源清理与重置开发测试完成后完整清理步骤docker-compose down -v # 删除容器和卷 docker rmi $(docker images | grep milvus | awk {print $3}) # 删除镜像 rm -rf ./milvus_data # 删除数据目录如果只需要重置数据但保留配置docker-compose stop rm -rf ./milvus_data/volumes/* docker-compose start记得定期清理Docker系统资源docker system prune -f

相关文章:

Docker Compose一键部署Milvus单机版(附Attu可视化工具)

1. 环境准备与前置条件 在开始部署Milvus单机版之前,我们需要确保本地开发环境满足基本要求。我建议使用Ubuntu 20.04或CentOS 7以上版本的操作系统,这两个发行版对Docker的支持最为完善。实测下来,Windows系统通过WSL2也能运行,但…...

老旧笔记本升级值不值?华硕A456U换固态+光驱改机械硬盘的真实性能测试

老旧笔记本性能重生指南:华硕A456U硬件升级全解析 当你的笔记本电脑开始出现卡顿、响应迟缓时,先别急着把它扔进垃圾桶。以华硕A456U为例,这台服役近十年的机器通过合理的硬件升级,完全有可能重获新生。本文将带你深入探讨老旧笔记…...

美国亚太部署是“撤退”还是“重配”?

当我们都在关注美国从日韩“抽调”军事力量时,一个逆向问题值得追问:抽调的同时,美国是否仍在强化亚太部署?这两者是矛盾,还是同一战略的两面? 答案是:既是“拆东墙”,也是“砌新墙”。 美国正在重新配置其亚太军事资产——从中日韩等传统核心基地,向菲律宾等“外环”…...

3个核心功能解决多平台直播推流痛点:OBS Multi RTMP插件实战指南

3个核心功能解决多平台直播推流痛点:OBS Multi RTMP插件实战指南 【免费下载链接】obs-multi-rtmp OBS複数サイト同時配信プラグイン 项目地址: https://gitcode.com/gh_mirrors/ob/obs-multi-rtmp 在多平台内容分发成为主流的今天,内容创作者面临…...

API管理工具——五款主流方案的场景化解读与对照

API(应用程序编程接口)作为现代软件架构的“连接件”,其集成与管理能力已从单纯的技术工具演变为企业核心竞争力的关键组成部分。然而,面对市场上理念不同、功能各异的API集成平台,技术决策者往往陷入选择困境&#xf…...

Zepp Life步数自动化同步工具:从技术实现到场景落地的全方位指南

Zepp Life步数自动化同步工具:从技术实现到场景落地的全方位指南 【免费下载链接】mimotion 小米运动刷步数(微信支付宝)支持邮箱登录 项目地址: https://gitcode.com/gh_mirrors/mimo/mimotion 引导语:重新定义健康数据管…...

蓝桥杯备赛题

P1025 [NOIP 2001 提高组] 数的划分 - 洛谷 #include <bits/stdc.h> using namespace std;int n,k; int path,ret;void dfs(int pos,int begin) {if(pos k){if(path n){ret;}return;}for(int i begin;i < n;i){if(path i*(k - pos) > n) return;path i;dfs(p…...

码农江湖:西二旗的996与理想国

程序员的江湖西二旗地铁站的晚高峰&#xff0c;永远拥挤。背着双肩包的年轻人鱼贯而出&#xff0c;面容疲惫&#xff0c;眼神却亮——那是在屏幕前浸泡一天后&#xff0c;见到自然光时的生理反应。他们四散消失在回龙观的楼群里&#xff0c;像退潮的鱼&#xff0c;回到自己栖息…...

卷积神经网络原理与OFA模型应用:理解视觉特征提取

卷积神经网络原理与OFA模型应用&#xff1a;理解视觉特征提取 1. 引言 如果你对AI如何“看懂”图片感到好奇&#xff0c;比如它怎么认出照片里是猫还是狗&#xff0c;或者怎么给一段文字配上一张合适的图&#xff0c;那么你很可能已经听说过卷积神经网络&#xff08;CNN&…...

联发科设备变砖不用愁?MTKClient高效修复方案全解析

联发科设备变砖不用愁&#xff1f;MTKClient高效修复方案全解析 【免费下载链接】mtkclient MTK reverse engineering and flash tool 项目地址: https://gitcode.com/gh_mirrors/mt/mtkclient 当联发科设备遭遇系统崩溃、刷机失败或密码锁定等问题时&#xff0c;传统维…...

RENPY中文游戏字体替换全攻略:从字体选择到gui.rpy配置,一步步教你避开坑

RENPY中文游戏字体替换实战指南&#xff1a;从选型到调试的完整解决方案 当你打开自己精心制作的RENPY中文游戏&#xff0c;却发现对话文本显示为生僻字框框或系统默认字体时&#xff0c;那种挫败感我深有体会。三年前我的第一个视觉小说项目就因为这个看似简单的问题卡了两周—…...

海景美女图-一丹一世界FLUX.1GPU算力适配:多模型并行推理资源分配

海景美女图-一丹一世界FLUX.1GPU算力适配&#xff1a;多模型并行推理资源分配 1. 引言&#xff1a;当AI绘画遇上GPU资源管理 想象一下这个场景&#xff1a;你部署了一个很棒的AI图像生成服务&#xff0c;专门用来画海景美女图。一开始用的人不多&#xff0c;服务器轻轻松松就…...

CentOS7.9下CephFS双模式挂载全攻略:从FUSE到内核态实战

CentOS7.9下CephFS双模式挂载全攻略&#xff1a;从FUSE到内核态实战 在分布式存储系统的选型中&#xff0c;CephFS以其出色的扩展性和可靠性成为企业级文件存储的热门选择。特别是在需要多节点共享存储的生产环境中&#xff0c;如何根据实际需求选择最优的挂载方式&#xff0c;…...

机器学习——PLC基础

一、PLC的主要应用领域PLC的应用范围极其广泛&#xff0c;以下是几个典型的应用场景&#xff1a;电梯控制&#xff1a;实现电梯的楼层呼叫、开关门控制和平层定位防盗系统控制&#xff1a;安防监控、报警触发和设备联动交通分流信号灯控制&#xff1a;路口红绿灯的时序控制和智…...

罗技PUBG压枪宏完全配置指南:从问题诊断到精准调校

罗技PUBG压枪宏完全配置指南&#xff1a;从问题诊断到精准调校 【免费下载链接】logitech-pubg PUBG no recoil script for Logitech gaming mouse / 绝地求生 罗技 鼠标宏 项目地址: https://gitcode.com/gh_mirrors/lo/logitech-pubg 在绝地求生的战场上&#xff0c;为…...

YOLO12多模态扩展:结合CLIP实现图文联合目标理解教程

YOLO12多模态扩展&#xff1a;结合CLIP实现图文联合目标理解教程 1. 引言&#xff1a;从“看见”到“理解” 想象一下&#xff0c;你正在开发一个智能安防系统。传统的目标检测模型&#xff0c;比如YOLO&#xff0c;可以准确地告诉你&#xff1a;“画面里有一只狗&#xff0c…...

QAnything在Linux系统的部署教程:Ubuntu20.04环境配置

QAnything在Linux系统的部署教程&#xff1a;Ubuntu20.04环境配置 1. 引言 如果你正在寻找一个能在本地安全运行的知识库问答系统&#xff0c;QAnything绝对值得一试。这个开源工具支持多种文档格式&#xff0c;从PDF、Word到图片都能处理&#xff0c;而且完全可以在断网环境…...

Gofile Downloader:解决文件下载痛点的自动化工具

Gofile Downloader&#xff1a;解决文件下载痛点的自动化工具 【免费下载链接】gofile-downloader Download files from https://gofile.io 项目地址: https://gitcode.com/gh_mirrors/go/gofile-downloader 一、核心价值&#xff1a;重新定义Gofile文件获取体验 1.1 行…...

猫抓:三步解决网页媒体资源获取难题的高效工具

猫抓&#xff1a;三步解决网页媒体资源获取难题的高效工具 【免费下载链接】cat-catch 猫抓 chrome资源嗅探扩展 项目地址: https://gitcode.com/GitHub_Trending/ca/cat-catch 你是否曾遇到想保存网页视频却找不到下载按钮的困境&#xff1f;作为内容创作者&#xff0c…...

阿里Z-Image镜像实测:Turbo/Base/Edit三大版本怎么选?一文说清

阿里Z-Image镜像实测&#xff1a;Turbo/Base/Edit三大版本怎么选&#xff1f;一文说清 面对阿里最新开源的Z-Image文生图模型&#xff0c;你是不是有点选择困难&#xff1f;看到Turbo、Base、Edit三个版本&#xff0c;第一反应是&#xff1a;它们到底有什么区别&#xff1f;我…...

企业级多节点内容同步:OBS Multi RTMP插件实战指南

企业级多节点内容同步&#xff1a;OBS Multi RTMP插件实战指南 【免费下载链接】obs-multi-rtmp OBS複数サイト同時配信プラグイン 项目地址: https://gitcode.com/gh_mirrors/ob/obs-multi-rtmp 在数字营销与在线活动爆发的当下&#xff0c;企业面临着一个普遍困境&…...

Love2D vs PICO-8实战对比:5个关键维度教你选对2D游戏开发工具

Love2D vs PICO-8实战对比&#xff1a;5个关键维度教你选对2D游戏开发工具 当48小时GameJam倒计时开始&#xff0c;选择正确的工具可能决定你的游戏能否顺利完成。作为两款备受独立开发者青睐的2D游戏开发工具&#xff0c;Love2D和PICO-8都能快速实现创意&#xff0c;但它们的哲…...

知识图谱在智能客服中的应用:从问答系统到场景化解决方案

知识图谱重构智能客服&#xff1a;从精准问答到场景化服务的进化路径 当你在深夜打开手机银行APP&#xff0c;向智能客服询问"如何开通跨境汇款"时&#xff0c;背后正上演着一场精密的"知识交响乐"。知识图谱技术正在重塑智能客服的底层逻辑&#xff0c;将…...

图像复原技术实战:逆滤波与维纳滤波的MATLAB对比与优化

1. 图像复原技术入门&#xff1a;从模糊到清晰的魔法 想象一下你拍了一张珍贵的照片&#xff0c;结果发现画面模糊不清&#xff0c;就像隔着一层毛玻璃。这时候图像复原技术就能派上用场了——它就像是给照片做"视力矫正"的手术。在实际应用中&#xff0c;我们经常会…...

【JMST】:二苄基甲苯在低压系统中的高效加氢与脱氢性能优化研究

1. 二苄基甲苯&#xff1a;低压储氢技术的新星 二苄基甲苯&#xff08;DBT&#xff09;这种看起来复杂的化学物质&#xff0c;实际上正在成为氢能存储领域的一颗新星。想象一下&#xff0c;我们需要把氢气这种清洁能源安全高效地储存起来&#xff0c;就像把水装进瓶子一样简单。…...

用AI股票分析师daily_stock_analysis做投资预研:快速获取任意股票代码的虚构分析

用AI股票分析师daily_stock_analysis做投资预研&#xff1a;快速获取任意股票代码的虚构分析 1. 引言&#xff1a;当AI遇见股票分析 每天早上打开财经新闻&#xff0c;总能看到各种股票分析报告。但作为普通投资者&#xff0c;我们常常面临两个难题&#xff1a;专业分析报告看…...

Phi-3-vision-128k-instruct部署教程:离线环境纯内网vLLM+Chainlit部署方案

Phi-3-vision-128k-instruct部署教程&#xff1a;离线环境纯内网vLLMChainlit部署方案 1. 模型简介 Phi-3-Vision-128K-Instruct是一个轻量级的多模态模型&#xff0c;支持文本和视觉数据的处理。这个模型属于Phi-3系列&#xff0c;特别之处在于它支持长达128K的上下文长度&a…...

Phi-3-vision-128k-instruct多行业落地:医疗影像简析、法律文书图解、金融图表问答

Phi-3-vision-128k-instruct多行业落地&#xff1a;医疗影像简析、法律文书图解、金融图表问答 1. 模型简介 Phi-3-Vision-128K-Instruct 是一款轻量级的多模态模型&#xff0c;属于Phi-3模型家族的最新成员。该模型支持128K的超长上下文处理能力&#xff0c;特别擅长处理图文…...

3个核心步骤:开源工具MTKClient核心功能完全掌握指南

3个核心步骤&#xff1a;开源工具MTKClient核心功能完全掌握指南 【免费下载链接】mtkclient MTK reverse engineering and flash tool 项目地址: https://gitcode.com/gh_mirrors/mt/mtkclient 一、认知&#xff1a;MTKClient基础架构与环境部署 1.1 工具定位与核心价…...

智能体(Agent)开发框架初探:基于MiniCPM-o-4.5-nvidia-FlagOS构建

智能体&#xff08;Agent&#xff09;开发框架初探&#xff1a;基于MiniCPM-o-4.5构建你的AI助手 最近&#xff0c;身边不少朋友都在聊智能体&#xff08;Agent&#xff09;&#xff0c;感觉它像是给大模型装上了“手”和“脚”&#xff0c;让AI不仅能思考&#xff0c;还能主动…...