domainmod is a free, open source data warehousing & processing project written in PHP and released under GPL-3.0. It has 600 GitHub stars, 118 forks and 17 open issues, and was last pushed 32 hours ago. On this registry it ranks #21 of 21 tracked projects in Data Warehousing & Processing, with 5 head-to-head comparisons available.

What is domainmod?

DomainMOD is an open-source PHP and MySQL application for managing domains, SSL certificates, and other internet assets in one place, aimed at administrators and hosting providers who need a central inventory plus reporting on live web server data.

What it is

DomainMOD is a self-hosted asset management application written in PHP that runs against MariaDB or MySQL. Its primary purpose is to hold a single, authoritative record of a user's domains and related internet assets, so that registrations, renewals, and certificate expiry dates are tracked together rather than scattered across registrar panels and spreadsheets. Alongside this inventory, the application ships with a Data Warehouse framework that imports web server data so administrators can view, export, and report on live data from within the same system.

The concrete problem it solves is the fragmentation of domain and hosting records across providers, and the difficulty of answering operational questions about what is running where. Currently the Data Warehouse only supports web servers running WHM/cPanel, which means the project is specifically targeted at administrators already operating in that control panel ecosystem. The application also includes a Task Scheduler, exposed as a cron job, which keeps the installation up to date and sends notifications such as emails about upcoming domain and SSL certificate expirations.

Key capabilities

  • Maintain a central inventory of domains and other internet assets in a single MySQL or MariaDB-backed database.
  • Import web server data through the built-in Data Warehouse framework, then view, export, and report on live data.
  • Query data from web servers running WHM/cPanel, which is currently the only supported Data Warehouse source.
  • Run scheduled system jobs through the Task Scheduler via a cron job, including email notifications for upcoming domain and SSL certificate expirations.
  • Require only PHP 8.1–8.2.9 with the PDO (MariaDB/MySQL), cURL, OpenSSL, and gettext extensions, plus allow_url_fopen.
  • Install by copying _includes/config.SAMPLE.inc.php to config.inc.php, entering web server settings, and completing the browser-based installer.
  • Distribute through the official domainmod/domainmod Docker Hub container, a .zip archive, a git clone https://github.com/domainmod/domainmod.git checkout, or Softaculous.

Who uses it and how

  • Hosting providers and server administrators running WHM/cPanel, who can feed live web server data into the Data Warehouse for reporting alongside their domain inventory.
  • Self-hosters who deploy from the official Docker Hub image and let Docker handle the install path entirely.
  • Web hosts whose customers install DomainMOD directly from Softaculous inside control panels such as cPanel, Plesk, DirectAdmin, or InterWorx.
  • Small teams that want automated expiry awareness, relying on the scheduled cron job to email them about domain and SSL certificate renewals.
  • Administrators evaluating before committing, who can drive the live demo offered on the project site rather than installing first.

Getting started

Pull the official container from Docker Hub at hub.docker.com/r/domainmod/domainmod, or clone the repository with git clone https://github.com/domainmod/domainmod.git and run the browser installer after creating a MySQL database and copying _includes/config.SAMPLE.inc.php to _includes/config.inc.php.

How it compares

The project's facts name no comparable or competing tools, so within this registry DomainMOD stands alone; its stated scope is the WHM/cPanel hosting environment rather than a general-purpose asset tracker. It is released under GPL-3.0.

When to use it — and when not to

A self-hoster must operate a PHP 8.1–8.2.9 web server with the required extensions, a MariaDB or MySQL instance, and a working cron job, since the Task Scheduler is what enables notifications and other scheduled features. It should not be chosen by administrators whose servers are not running WHM/cPanel if warehouse reporting is the goal, since the Data Warehouse currently supports only that environment, and the project reports 17 open issues that a prospective operator may want to review first.

project readme (upstream, from github) — read inline

DomainMOD

ACR B0a

Project Home:
Project Demo:
Documentation:
Source Code:

About

DomainMOD is an open source application written in PHP & MySQL used to manage your domains and other internet assets in a central location. DomainMOD also includes a Data Warehouse framework that allows you to import your web server data so that you can view, export, and report on your live data. Currently the Data Warehouse only supports web servers running WHM/cPanel.

Live Demo

Not sure if DomainMOD is what you're looking for? Don't want to take the time to install it only to find out that it's not? We hate when that happens ourselves, which is why we've setup a live demo so you don't waste your time.

So go ahead, take the live demo for a test drive before you install:

Requirements

Software: PHP 8.1-8.2.9, MariaDB 10.4-11.1.2 or MySQL 5.7-8.1.0
PHP Extensions: PDO (MariaDB/MySQL), cURL, OpenSSL, gettext
PHP Settings: allow_url_fopen

Downloading

There are currently four options for downloading DomainMOD.

Option #1 -- Using Docker

Please see our official DomainMOD container on Docker Hub for more information: https://hub.docker.com/r/domainmod/domainmod

Option #2 -- Downloading a .zip file

Visit the following URL to download DomainMOD in a .zip file:

Option #3 -- Using Git

To download using Git, change to the directory where you want to install DomainMOD and run the following command (this download option requires that you have Git installed on your server):

git clone https://github.com/domainmod/domainmod.git

Option #4 -- Installing via Softactulous

Softaculous is the web hosting industry's leading software auto-installer, and it has helped millions of users install applications with a few clicks of a mouse. Softaculous easily integrates into the leading control panels like cPanel, Plesk, DirectAdmin, InterWorx, H-Sphere, and more. Check your hosting control panel or contact your web host if you're not sure if they offer Softaculous.

To install DomainMOD simply open Softaculous, use the search feature to find DomainMOD, and then click the "Install Now" button. After you answer a few questions about your installation Softaculous will do the rest.

More Information:

Installing

If you installed DomainMOD using Docker or Softaculous in the previous step you can ignore the rest of this Installing section, as you should already have DomainMOD up-and-running.

If you downloaded the .zip file in the previous step, you will now need to upload the archive to your web server and then unpack it into the folder where you wish to install (or unpack it and then upload it, whichever you prefer).

If you used Git to retrieve the source code in the previous step, just change to the directory where you ran the git command and your files are already waiting for you in a folder called /domainmod/. Feel free to rename this folder to whatever you want.

Installation Steps

  1. Create a MySQL database that will be used to store DomainMOD's data.

  2. In the '_includes' folder, copy config.SAMPLE.inc.php to config.inc.php and then update config.inc.php to reflect your web server's settings.

  3. In a web browser, visit the URL where you just installed DomainMOD, enter the requested information, and then click the Install button. For example, example.com/domainmod/. After a few seconds a message will appear letting you know that the installation was successful.

  4. Setup the below cron job on your web server.

Cron Job

DomainMOD includes a Task Scheduler that allows you to run various system jobs at specified times, which helps keep your DomainMOD installation up-to-date and running smoothly, as well as notifies you of important information, such as emailing you to let you know about upcoming Domain & SSL Certificate expirations.

The Task Scheduler is very powerful, and it enables features that you otherwise wouldn't be able to use, but in order for it to function you need to schedule the below cron job to run on your web server. Once the cron job is setup to run, the Task Scheduler will be live.

If you installed DomainMOD using Docker, the cron job will be setup and running automatically within the container, so there's nothing you need to setup manually.

NOTE: This file should be executed every 10 minutes.

Filename: /cron.php

Security

Although we've done our best to secure DomainMOD, unfortunately there are many factors that could cause security holes, such as the software being run on insecure hardware, software like PHP and MySQL having out-of-date versions with known vulnerabilities, easy-to-guess passwords being used, and so on. Due to these factors we recommend the following steps to help secure your DomainMOD installation.

  1. Secure your installation with an SSL Certificate.

  2. Do not use easy-to-guess passwords. Ever.

  3. Although DomainMOD has its own authentication system, we recommend that you also use HTTP authentication on your installation directory to add an extra layer of security.

  4. Do not store your account passwords or API keys in DomainMOD. Although the ability to save this information exists, use it at your own risk. This information is fairly secure if you run DomainMOD on your local computer, but there's a much higher risk of someone gaining access to it if you host the site on a server that is accessible to the outside world.

    WARNING: Saving your API keys (and other relevant API connection information) in DomainMOD is necessary if you want to use the Domain Queue, however we recommend that you only save this information temporarily while you're using the Domain Queue, and that you remove it as soon as you're done.

  5. Do not host DomainMOD on a public website or on an easy-to-guess URL.

    If you do end up hosting DomainMOD on a public website, you should use your website's robots.txt file to block bots and spiders from crawling your site, otherwise your DomainMOD URL may end up in public search results.

  6. Do not give the URL to anyone who does not need to access DomainMOD. You should treat the URL like a password.

  7. Always use the most up-to-date version of DomainMOD. This will help protect you from any security vulnerabilities that are found and fixed.

Upgrading

WARNING: Before upgrading it's strongly recommended that you backup your DomainMOD installation directory and database. If something goes wrong during the upgrade there may be no way to recover your data, and having a backup of your installation directory and database will allow you to easily restore your previous version. The Backup & Restore documentation can be found here:

Option #1 -- Docker Install
If you installed DomainMOD using Docker, please see our official DomainMOD container on Docker Hub for upgrade information:

Option #2 -- .zip File Install
If you installed DomainMOD by downloading the .zip file, visit the following URL to download the most up-to-date version:

Once the download completes, upload and unpack the new archive overtop of where you installed the previous version (or unpack it and then upload it, whichever you prefer).

Option #3 -- Git Install
If you installed DomainMOD using Git right from your web server, just run the following command from within your installation directory to upgrade:

git pull

Option #4 -- Softaculous Install
If you installed DomainMOD using Softaculous you're just a few clicks away from upgrading to the newest version. Please see the upgrade instructions on the Softaculous Wiki:

Data Warehouse

DomainMOD has a Data Warehouse framework built right into it, which allows you to import the data stored on your web server. Currently the only web servers that are supported are ones that run WHM/cPanel.

If your web server doesn't run WHM/cPanel, or you don't want to import your web server data into DomainMOD, you can ignore this section.

NOTE: Importing your web server(s) into the Data Warehouse will not modify any of your other DomainMOD data, nor any of the data on your web server.

Supported Data
The following WHM sections are currently supported, but our end goal is to have every piece of WHM information that can be retrieved via the API stored in the Data Warehouse.

Accounts
Domain, IP Address, Owner, User, Contact Email, Plan, Theme, Shell, Partition, Disk Limit, Disk Usage, Max Addons, Max FTP Accounts, Max Email Lists, Max Parked Domains, Max POP Accounts, Max SQL Accounts, Max Subdomains, Creation Date, Suspend Status, Suspend Reason, Suspend Time, Max Email Per Hour, Failed Email % Before Defer, Min Failed Email # Before Defer

DNS Zones
Zone Filename, Original/Primary Source of Zone Data, Admin Email, Serial #, Refresh, Retry, Expiry, Minimum TTL, Authoritative Name Server

DNS Records
TTL, Class, Type, IP Address, CNAME, Mail Server, Mail Server Priority, TXT Data, Line # of Zone, # of Lines, RAW Data

Code of Conduct

Please see CODE_OF_CONDUCT.md for a detailed explanation of our code of conduct.

Contributing

Please see CONTRIBUTING.md for our contributing guidelines.

Support

For the DomainMOD documentation please visit , or access the /docs/ folder within your DomainMOD installation.

If you have any questions, comments, or bugs to report, please visit .

Changelog

Please see the CHANGELOG file that came with DomainMOD, or view the Changelog online at .

License

DomainMOD is an open source domain and internet asset manager.
Copyright (c) 2010-2025 Greg Chetcuti

DomainMOD is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

DomainMOD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with DomainMOD. If not, see .

Frequently asked questions

Is domainmod free to use?

domainmod is open source under the GPL-3.0 licence. There is no licence fee and no seat count — you can self-host it or, where the project offers one, pay a vendor for a managed version instead.

What does domainmod do?

DomainMOD is an open source application written in PHP & MySQL used to manage your domains and other internet assets in a central location. DomainMOD also inclu

What is domainmod written in?

domainmod is primarily written in PHP. Its source is publicly available at https://github.com/domainmod/domainmod, and it has 600 GitHub stars.