吐血整理:在 Docker 中运行 Milvus

news/2025/2/25 10:04:31

直接用docker 错误命令(这个我试了三遍,浪费了很多时间):

docker run -d --name milvus -p 19530:19530 -p 9091:9091 -v /var/lib/milvus:/var/lib/milvus milvusdb/milvus:latest

先看报错:

2025-02-24 16:02:39 ERROR: ld.so: object '/milvus/lib/' from LD_PRELOAD cannot be preloaded (cannot read file data): ignored.
2025-02-24 16:02:39 tini (tini version 0.19.0 - git.de40ad0)
2025-02-24 16:02:39 Usage: tini [OPTIONS] PROGRAM -- [ARGS] | --version
2025-02-24 16:02:39 
2025-02-24 16:02:39 Execute a program under the supervision of a valid init process (tini)
2025-02-24 16:02:39 
2025-02-24 16:02:39 Command line options:
2025-02-24 16:02:39 
2025-02-24 16:02:39   --version: Show version and exit.
2025-02-24 16:02:39   -h: Show this help message and exit.
2025-02-24 16:02:39   -s: Register as a process subreaper (requires Linux >= 3.4).
2025-02-24 16:02:39   -p SIGNAL: Trigger SIGNAL when parent dies, e.g. "-p SIGKILL".
2025-02-24 16:02:39   -v: Generate more verbose output. Repeat up to 3 times.
2025-02-24 16:02:39   -w: Print a warning when processes are getting reaped.
2025-02-24 16:02:39   -g: Send signals to the child's process group.
2025-02-24 16:02:39   -e EXIT_CODE: Remap EXIT_CODE (from 0 to 255) to 0.
2025-02-24 16:02:39   -l: Show license and exit.
2025-02-24 16:02:39 
2025-02-24 16:02:39 Environment variables:
2025-02-24 16:02:39 
2025-02-24 16:02:39   TINI_SUBREAPER: Register as a process subreaper (requires Linux >= 3.4).
2025-02-24 16:02:39   TINI_VERBOSITY: Set the verbosity level (default: 1).
2025-02-24 16:02:39   TINI_KILL_PROCESS_GROUP: Send signals to the child's process group.
2025-02-24 16:02:39 
2025-02-24 16:06:03 ERROR: ld.so: object '/milvus/lib/' from LD_PRELOAD cannot be preloaded (cannot read file data): ignored.
2025-02-24 16:06:03 tini (tini version 0.19.0 - git.de40ad0)
2025-02-24 16:06:03 Usage: tini [OPTIONS] PROGRAM -- [ARGS] | --version
2025-02-24 16:06:03 
2025-02-24 16:06:03 Execute a program under the supervision of a valid init process (tini)
2025-02-24 16:06:03 
2025-02-24 16:06:03 Command line options:
2025-02-24 16:06:03 
2025-02-24 16:06:03   --version: Show version and exit.
2025-02-24 16:06:03   -h: Show this help message and exit.
2025-02-24 16:06:03   -s: Register as a process subreaper (requires Linux >= 3.4).
2025-02-24 16:06:03   -p SIGNAL: Trigger SIGNAL when parent dies, e.g. "-p SIGKILL".
2025-02-24 16:06:03   -v: Generate more verbose output. Repeat up to 3 times.
2025-02-24 16:06:03   -w: Print a warning when processes are getting reaped.
2025-02-24 16:06:03   -g: Send signals to the child's process group.
2025-02-24 16:06:03   -e EXIT_CODE: Remap EXIT_CODE (from 0 to 255) to 0.
2025-02-24 16:06:03   -l: Show license and exit.
2025-02-24 16:06:03 
2025-02-24 16:06:03 Environment variables:
2025-02-24 16:06:03 
2025-02-24 16:06:03   TINI_SUBREAPER: Register as a process subreaper (requires Linux >= 3.4).
2025-02-24 16:06:03   TINI_VERBOSITY: Set the verbosity level (default: 1).
2025-02-24 16:06:03   TINI_KILL_PROCESS_GROUP: Send signals to the child's process group.
2025-02-24 16:06:03

这个错误信息主要有两个部分:

  1. ld.so: object '/milvus/lib/' from LD_PRELOAD cannot be preloaded:这个错误通常与库预加载配置有关,LD_PRELOAD 环境变量指定的库文件无法被正确读取。可能是路径 /milvus/lib/ 指定不正确,或者是该路径下没有实际存在的库文件。你可以检查是否该路径下有有效的 .so 文件,并确保路径配置正确。

  2. tini 使用信息:这是容器启动过程中调用 tini 的输出,tini 是一个用于处理进程管理的工具,通常用于确保容器中运行的程序是由一个有效的初始化进程管理的。这个输出本身并不是错误,它只是提供了 tini 的帮助信息。

然后去官网找到了安装方法: 在 Docker(Linux)中运行 Milvus | Milvus 文档

 步骤这边贴出来:

前提条件:

  • 安装 Docker Desktop。

  • 安装 Windows Subsystem for Linux 2 (WSL 2)。

  • 安装 Python 3.8+。

在 Docker 中运行 Milvus

Milvus 提供了一个安装脚本,可将其安装为 Docker 容器。在 Microsoft Windows 上安装 Docker Desktop 后,就可以在管理员模式下通过 PowerShell 或 Windows Command Prompt 以及 WSL 2 访问 Docker CLI。

从 PowerShell 或 Windows 命令提示符

如果你更熟悉 PowerShell 或 Windows Command Prompt,命令提示符如下。

  1. 在管理员模式下右击并选择以管理员身份运行,打开 Docker Desktop。

  2. 下载安装脚本并将其保存为standalone.bat 。

Invoke-WebRequest https://raw.githubusercontent.com/milvus-io/milvus/refs/heads/master/scripts/standalone_embed.bat -OutFile standalone.bat

运行下载的脚本,将 Milvus 作为 Docker 容器启动。

C:\>standalone.bat start
Wait for Milvus starting...
Start successfully.
To change the default Milvus configuration, edit user.yaml and restart the service.

运行安装脚本后

  • 名为Milvus-standalonedocker 容器已在19530 端口启动。

  • 嵌入式 etcd 与 Milvus 安装在同一个容器中,服务端口为2379。其配置文件被映射到当前文件夹中的embedEtcd.yaml

  • Milvus 数据卷被映射到当前文件夹中的volumes/milvus

可以使用以下命令管理 Milvus 容器和存储的数据。

C:\>standalone.bat stop
Stop successfully.

C:\>standalone.bat delete
Delete Milvus container successfully. # Container has been removed.
Delete successfully. # Data has been removed.


http://www.niftyadmin.cn/n/5865358.html

相关文章

GEE中的JavaScript语法基础

以下是Google Earth Engine(GEE)中JavaScript语法的基础知识,这些知识可以帮助你在GEE环境中进行有效的编码和数据处理: JavaScript语法基础 1. 变量和数据类型 变量声明:在GEE中,我们使用 var 关键字来声…

【高并发】高并发架构设计

一、问题拆解方法论 明确场景边界 流量规模(QPS/TPS/数据量)业务特征(读多写少/写密集型/实时性要求)容忍度(延迟要求/数据一致性级别) 示例: “在电商秒杀场景中,我们面对的是瞬时10万QPS的读请求洪峰,要求99.9%请求在200ms内响应,且要保证库存准确性”分层优化策略…

VMware17下安装Ubuntu22.04与Docker(附带:1.解决重启后IP重置问题。2.多个虚拟机之间网络通信)

VMware17下安装Ubuntu22.04与Docker (附带:1.解决重启后IP重置问题。2.多个虚拟机之间网络通信) 文章目录 VMware17下安装Ubuntu22.04与Docker前言1 Ubuntu22.04 Server下载2 VMware17设置虚拟机的连接网络3 安装Ubuntu22.04虚拟机4 设置ro…

SMT贴片代工高效解决方案

内容概要 在现代电子制造领域,SMT贴片代工作为智能制造的关键环节,其技术演进正推动着行业效率的持续跃升。专业代工服务通过集成全流程数字化管理系统,构建起从基板预处理到回流焊接的完整工艺链,其中全自动高速贴片机采用视觉对…

DLP数据防泄漏产品的关键性能指标

DLP数据防泄漏产品的关键性能指标包括以下几个方面: Refer:揭秘数据丢失防护(DLP):保护敏感信息的关键_dlp协议-CSDN博客 一、数据识别能力(核心能力) 准确率(Precision rate): 准确识别敏感数据的能力,…

sysbench压测pgsql数据库 —— 筑梦之路

这里主要使用sysbench工具对Pgsql数据库进行基准测试。 1. 创建数据库和用户名 # 创建用户和数据库CREATE USER sysbench WITH PASSWORD 123456;CREATE DATABASE sysbench owner sysbench;# 给用户授权访问 vim pg_hba.confhost sysbench sysbench 127…

rtpengine build mr12.5.1 镜像

debian 版本 cat Dockerfile: FROM debian:bookworm-20230725 RUN apt-get update && \apt-get dist-upgrade gnupg2 apt-utils lsb-release cmake curl iproute2 ca-certificates gcc g make build-essential libavfilter-dev \libevent-dev libpcap-dev libxmlrpc-…

华山论剑之JAVA中的“方法论”

这里是:钮钴禄.爱因斯晨~ 更多精彩:个人主页 JAVA专栏:Java 热门文章1:赛博算命之梅花易数 热门文章2:赛博算命之周易六十四卦 大佬们互三哦~~互三必回,后台踢踢哦~ 前言 在 Java 编程的广袤世界里&#xf…