selfhost.directory

The index of self-hostable projects — ranked, categorized and served with live updates.
Own your data and stop giving it to big tech.

openDCIM logo

Self-host openDCIM

26.01

Data center infrastructure management for asset tracking

ReleaseOpen SourceGPL-3.0-only
Updated8 hours ago
LanguagePHP
Setup difficultyAdvanced
Stars
369
Requires
Apache, MySQL, PHP, PHP SNMP module
Install with Build from Source
Data center statistics dashboardAir flow visualizationCabinet navigator viewDevice management viewSwitch device detailsPatch panel mappingPDU information viewPower panel manager

What is openDCIM?

openDCIM is a web-based Data Center Infrastructure Management application originally developed at Vanderbilt University and now maintained by Scott Milliken at Oak Ridge National Laboratory. It tracks physical inventory of data center assets across multiple rooms and manages capacity for space, power, and cooling. Features include power outage simulation for fault tolerance, center of gravity calculations for cabinets, device templates with per-device overrides, optional cable mapping, equipment archival, and SNMP integration with intelligent PDUs and UPS units from vendors like APC, Geist, Liebert, and Server Technologies. The software runs on a LAMP stack (Apache 2.x, MySQL 5.x+, PHP 8.0+) with authentication via Apache or LDAP. A public demo is available at demo.opendcim.org. Licensed under GPL v3, the latest release is 26.01 from October 2024. The maintainer has announced retirement and is seeking a new maintainer.

Should you self-host openDCIM?

openDCIM scores 48/100 on selfhost.directory (how scoring works) and ranks #13 of 19 in Infrastructure Monitoring. It has 369 GitHub stars.

It shipped 1 stable release in the past year. The latest, 26.01, came out on 26 October 2026.

Setup is advanced: plan for several services and some ongoing maintenance. It is GPL-3.0-only-licensed and written mostly in PHP.

Its closest alternative on selfhost.directory is Beszel (81/100, 26 617 stars). It scores higher overall, so compare the two before you pick. See openDCIM vs Beszel side by side.

Features

  • Cable connection tracking
  • Capacity management
  • Center of gravity computation
  • Device template management
  • Equipment archival
  • Fault tolerance tracking
  • Graphical cabinet viewer
  • Hosting cost reporting
  • Intelligent PDU/UPS integration
  • Multi-room data center support
  • Network connection mapping
  • Physical asset inventory
  • Power connection mapping
  • RESTful APIListed as in-development feature

openDCIM README

How to install openDCIM

Install openDCIM with Build from Source

Supposing you are using apache, php and apache-php-module firstly clone openDCIM in a directory which is accessible by apache user (e.g. /srv/http/) and then configure apache to load required modules and have access to project directory (you can define virtual host too).

Database (PDO, PDODRIVERS, DB.INC)

Install and Configure Mysql and PHP-Mysql

Follow the guide

Create Database and Configuration File

Create the database and user

mysql -uroot -p -e "CREATE DATABASE dcim;CREATE USER 'dcim'@'localhost' IDENTIFIED BY 'dcim';GRANT ALL ON dcim.* TO 'dcim'@'localhost';"

Make db.inc.php from db.inc.php-dist

cp db.inc.php-dist db.inc.php

PHP SNMP Module

Install php-snmp and enable it in /etc/php/php.ini by uncomment or adding the line containing: extension=snmp.so

Apache User Authentication (AUTHENTICATION, REMOTE USER)

Enbale below apache modules:

  • mod_authn_file.so
  • mod_authn_core.so
  • mod_authz_user.so
  • mod_authz_core.so
  • mod_auth_basic.so

Then follow this link To create apache authentication database (such as htpasswd) and enable apache auth in openDCIM directory (e.g. using .htaccess in root).

Apache Rewrite (MOD_REWRITE)

Install Apache Rewrite Module and enable it

Run the application

Execute application by openning it in browser and do the installation

Manual installation on a LAMP stack with Apache, MySQL, PHP

How to configure openDCIM

  • Apache authenticationApache Basic Auth via htpasswd or LDAP

    Apache Basic Auth via htpasswd or LDAP

  • db.inc.phpDatabase configuration file copied from db.inc.php-dist

    Database configuration file copied from db.inc.php-dist

openDCIM releases & version history

FAQ

Is it possible to get a support contract?

Yes, the project offers paid support contracts including remote support, training, custom development, and on-site workshops based on hourly rates.

Why are my pictures not taking up the full space allocated?

Images need to be saved at the correct aspect ratio (76:7 per rack unit) to display properly without distortion.

Help! I upgraded from version 3.x to 4.x (or later) and now my cabinets are blank!

This is caused by incorrect Apache rewrite rules. The stock .htaccess file works in a basic setup; check your rewrite rules against the example.

I can't get my apache configuration to work. Can you help me?

The project directs Apache configuration questions to the Apache community resources rather than providing direct support.

Why do I have to set up user authentication to use openDCIM? I'm going to be the only person using it.

Authentication is required because even if you're the only user now, others may need access in the future. Retrofitting access control later would be difficult.

More in Asset Management

Rate this project

Click to rate — no account needed.

0 comments

Posting as guest
Loading comments…