Docker (推荐)
Linux。--network host 是必需的,这样容器才能通过 UDP 端口 623(IPMI/RMCP+ 端口)
在你的本地网络上直接访问你的 BMC。没有主机网络,容器会处于 Docker 的 NAT 之后,
无法与你的硬件完成 IPMI 会话。
ipmideck-data)挂载到 /data。该卷保存你的 config.yaml、
SQLite 数据库,以及保护你存储的 BMC 凭据的加密密钥,因此它们能在重启、升级或
docker rm 之后保留下来。没有 -v,每次重新创建容器时你都会得到一个全新的空安装。
容器启动后,打开 http://<your-ip>:3000 并按照设置向导操作。
已发布的镜像位于 Docker Hub
hub.docker.com/r/devluigi06/ipmideck。
pip
ipmitool,ipmideck 在每次 IPMI 操作时都会调用 ipmitool。
请先从你发行版的包管理器安装它(例如 apt install ipmitool 或 dnf install ipmitool)。
在 Debian 和 Ubuntu 上安装 (PEP 668)
在一个原装的 Debian 12+ 或 Ubuntu 23.04+ 系统上,pip install ipmideck 会停止并显示:
apt 依赖它,
因此阻止 pip 向其中写入。尽管如此,仍有两种受支持的方式来安装 ipmideck。
pipx (推荐)
pipx 将一个命令行 Python 应用安装到它自己的隔离虚拟环境中, 并将生成的命令全局暴露出来,同时从不触及系统 Python。这正是 ipmideck 的形态, 因此这是我们推荐的路径:~/.local/bin 中。Debian 和 Ubuntu 会在该目录存在后自动将其
加入你的 PATH,但仅对新的 shell 会话生效,因此第一次安装时会打印一条警告,
而 ipmideck 在你运行它的那个 shell 中还找不到:
venv
虚拟环境以同样的方式绕过 PEP 668,如果你从源码检出进行工作,它是正确的选择:ipmideck 命令就可用。
pip install --break-system-packages ipmideck 也可以工作,但它会直接写入系统 Python,
如果某个依赖的版本发生冲突,可能会破坏 apt。请优先使用 pipx 或 venv。ipmideck 在哪里存储数据
ipmideck 将其配置和数据库写入一个数据目录:- Docker: 容器内的
/data(镜像设置IPMIDECK_DATA_DIR=/data;使用卷使其持久化)。 - Linux 上的 pip: 默认
/data,非 root 用户通常无法写入。 - Windows 上的 pip:
./data,相对于你运行ipmideck的目录。
IPMIDECK_DATA_DIR 覆盖此位置。该目录包含 config.yaml、
SQLite 数据库,以及用于保护你存储的 BMC 凭据的加密密钥文件。详情请参阅
配置 和 运行 ipmideck。
作为服务运行 (Linux)
在终端中运行ipmideck start 会打开交互式控制台,并在你关闭会话时停止。
要让 ipmideck 在后台持续运行并在开机时启动,请改为在 systemd 下运行它。
创建一个专用用户,用 pipx 为它安装 ipmideck,并给它一个它拥有的数据目录:
journalctl -u ipmideck -f),与 Docker 容器完全一样。
systemctl stop 发送 SIGTERM,它会触发同样的优雅关闭,将风扇控制交还给你的 BMC。
请参阅 Headless / 非 TTY 模式。