Skip to content

v2.0.0

Choose a tag to compare

@github-actions github-actions released this 25 Jul 18:15
· 12 commits to main since this release

Python 3.11+ License: Apache 2.0 Docker Hub pulls PyPI version Supported BMCs: Dell, Supermicro, IBM, HPE, Lenovo

IPMIDeck dashboard

v2.0.0 is a full rewrite. v1 was one HTML page that pushed fan commands at a single Dell. v2 is a Python/FastAPI backend serving a React dashboard, talking to as many BMCs as you want over ipmitool.

Everything runs on your box. SQLite on disk, no cloud, no telemetry.

What it does

Area What you get
Monitoring Live temperature, fan RPM, voltage and power over a WebSocket. History charts at 1H, 24H and 7D.
FanPilot Drag-and-drop fan curves. The loop runs in the backend, so it keeps working with the browser closed.
Power On, soft off, hard off, reset and cycle, with an audit log. Tracks kWh and cost per server.
Event log Browse and search the BMC event log. Export to CSV or JSON.
Inventory FRU data: board, chassis, product.
Interface 12 languages, dark and light themes, command palette, mobile layout.

Fan safety

FanPilot curve editor

Above your critical threshold (85 °C by default) fans go to 100% and stay there until the temperature clears the hysteresis band. If a BMC stops answering, FanPilot fails safe instead of leaving the fans wherever they were. On shutdown it hands automatic fan control back to the BMC, including on Ctrl+C and docker stop.

Supported hardware

Sensors, power, event log and FRU work on any IPMI 2.0 BMC. Fan control is vendor-specific.

Vendor Fan control Tier Why
Dell PowerEdge (iDRAC) Yes Tested Validated on real hardware (R720)
Supermicro (X10+) Yes Experimental Both fan zones, not exhaustively tested
IBM System x (IMM) Yes Experimental Dual fan bank, not exhaustively tested
HPE ProLiant (iLO) No Monitoring only iLO exposes no IPMI fan-control interface
Lenovo ThinkSystem (XCC) No Monitoring only No reliable way to restore automatic mode
Generic / unknown BMC No Monitoring only Never sends raw writes it cannot verify

Monitoring-only boxes still get full sensors, power, event log and FRU. If you run Supermicro or IBM, reports are welcome. That is how they move to Tested.

Install

Docker:

docker run -d --name ipmideck --network host \
  -v ipmideck-data:/data \
  devluigi06/ipmideck:latest

On Windows and macOS use -p 3000:3000 instead of --network host.

pip (needs ipmitool on the system):

pip install ipmideck
ipmideck start

Open http://<your-ip>:3000 and the setup wizard takes over. No hardware around? ipmideck --demo seeds fake servers so you can click through everything.

Coming from v1

There is no in-place upgrade. Different stack, different database, different config. Install fresh and re-add your servers through the wizard.

v1 v2
Stack Node.js + Express Python 3.11+ / FastAPI + React
Image devluigi06/ipmi-fanpilot devluigi06/ipmideck
Data volume /app /data
Env prefix none IPMIDECK_*

Port 3000 is unchanged.

Links

Docs · Docker Hub · PyPI · Issues

The docs have per-vendor guides for turning IPMI on: iDRAC, iLO, Supermicro, XCC and IMM.


Bad fan control can damage hardware. Test somewhere that is not production first. Apache-2.0, provided as-is.

Full Changelog: 84df472...v2.0.0