The inventory your small business or homelab runs on.
MiniPAM is an open source IPAM and dynamic directory for small businesses and homelabs. Record your networks, addresses, devices, and services once, and let Nginx, Traefik, and your scripts read from it.
A short tour
Five stops across three use cases, from a hand-kept record to an inventory that keeps itself current. Click any screenshot to enlarge it.
Record what you have
Sites, networks, address pools, addresses, devices, and the services they run. Each address links to the interface that uses it, so the picture stays readable as the network grows.
Create an inventoryUse only what you need
MiniPAM supports three use cases, and the two dynamic ones can be combined. Each user chooses under Workspace features and can change it at any time. Hiding a feature never deletes data.
- Basic useRecord networks, addresses, devices, and services by hand. No templates, no agents.
- Dynamic configurationGenerate configuration files and reports from the inventory, guarded by checks.
- Dynamic inventoryNetwork agents scan and keep the inventory's state current. You review findings before anything changes.
Turn the inventory into files
Start from an Nginx, Traefik, or any custom template you write, and preview it against live data. Publish the result, and other systems fetch it from a stable link. Integrity checks keep a bad file from being published.
Templates and checksDiscover devices with network agents
Run a small agent on any machine in the network. It scans the subnets you choose and reports what answers. Findings land in a review queue with their evidence, and nothing enters the inventory until you accept it.
How discovery worksKeep it current on a schedule
Scans, imports, and file generation run on schedules you can see, pause, and run by hand. Every run is a job with a status, a duration, and a log.
Jobs and schedules
Small on purpose
- Made for small businesses and homelabs. A small business, a workshop, a home. One or a few sites, a handful of networks and VLANs, a few thousand devices, servers, interfaces and IP addresses.
- Nothing to operate but a database file. One Python server, one SQLite file, and an optional Go agent for discovery. MIT licensed.
- Not a data-center tool. No racks, cabling, circuits, or tenants. If you need those, NetBox is excellent.
Get started
Build the server image from a checkout of the repository, run it, and create the first admin. The web interface is on port 8091.
During pre-alpha, images and agent binaries are not published yet. Both build from the repository in a few minutes.
docker build -t minipam-server \
-f deployments/docker/server.Dockerfile .
docker run -d --name minipam -p 8091:8091 \
-v minipam-data:/var/lib/minipam minipam-server
docker exec -it minipam python cli.py auth set-root --loginname admin