PUQ Mautic

Docker MinIO WHMCS module

WHMCS module for Docker MinIO that automates the provisioning and management of MinIO instances on a Docker server. The module supports automatic container creation, suspension, termination, password management, IP access control, resource monitoring, metric billing, and email notifications for disk space limits.

Description

Docker MinIO module WHMCS

Order now | Download | FAQ | n8n

Docker MinIO WHMCS module

The WHMCS Docker MinIO module is designed for automated provisioning and management of MinIO instances on a Docker server. It seamlessly integrates with WHMCS, allowing businesses to sell and manage MinIO services efficiently.

Before you start, it is important to read and familiarize yourself with the following articles at this link: https://doc.puq.info/books/docker-modules


Key Features

Automated Container Management

Service Control & Security

Advanced Diagnostic Tools

Multilingual Support

Fully Customizable Workflows


Admin Panel Options

Client Panel Options


System requirements

Requirement Minimum
WHMCS 8.11.0 or higher
PHP 7.4, 8.1, or 8.2
ionCube Loader v13 or newer (v14, v15)
Docker server Debian 12 with Docker installed
n8n server For workflow automation


Screenshots

Client area — Home screen

Client area home screen

Client area container and app

Admin area — Product information

Admin area product information

Changelog

Docker MinIO module WHMCS

Order now | Download | FAQ | n8n

v2.0 (02-03-2026)

Note: Product reconfiguration is required after update.


v1.0 (17-03-2025)

Installation and Configuration Guide

Step-by-step instructions for installing, configuring, and setting up the Docker MinIO WHMCS module, including Docker server preparation, n8n workflow setup, WHMCS integration, email templates, and product configuration.

Installation and Configuration Guide

Basic concepts and requirements

Docker MinIO module WHMCS

Order now | Download | FAQ | n8n

Before you start, it is important to read and familiarize yourself with the following articles at this link: https://doc.puq.info/books/docker-modules

The WHMCS Docker MinIO module is part of the WHMCS Docker module series developed by PUQcloud. This module enables service providers to offer MinIO Docker containers as a service to their clients, allowing for seamless automation and integration.

The system consists of three core components:

WHMCS Module

The core component, installed in WHMCS, manages service provisioning and automation from the WHMCS side.

Debian 12 Server

A server running Debian 12 with the following pre-installed:

We have prepared instructions for installing and configuring Docker: https://doc.puq.info/books/docker-modules/page/installing-docker-for-puqcloud-modules

n8n Server

This server facilitates communication between the WHMCS module and the Docker server, ensuring smooth workflow execution. To explore n8n's full potential, visit the official n8n website for documentation, tutorials, and community support.


Key Features & Concepts

Workflow Automation

n8n provides a graphical workflow builder, allowing users to automate various tasks, such as:

Flexibility & Customization

The module offers personalized settings and supports elastic automation, giving clients full control over their n8n workflows.

Installation and Configuration Guide

WHMCS setup (install/update)

Docker MinIO module WHMCS

Order now | Download | FAQ | n8n

System requirements

The module uses ionCube encoding. Your server must meet the following requirements:

Requirement Minimum
PHP 8.2
WHMCS 9+ or higher
ionCube Loader v13 or newer (v14, v15)

Note: Module is coded with ionCube v13

To install and update a module, you must perform one and the same action.


Step 1 — Download the latest version of the module

PHP 8.2

wget http://download.puqcloud.com/WHMCS/servers/PUQ_WHMCS-Docker-MinIO/php82/PUQ_WHMCS-Docker-MinIO-latest.zip

All versions are available via link: https://download.puqcloud.com/WHMCS/servers/PUQ_WHMCS-Docker-MinIO/


Step 2 — Unzip the archive with the module

unzip PUQ_WHMCS-Docker-MinIO-latest.zip

Step 3 — Copy and Replace

Copy the puqDockerMinIO directory from the extracted PUQ_WHMCS-Docker-MinIO archive to your WHMCS installation:

WHMCS_WEB_DIR/modules/servers/

Note: To install and update a module, you must perform one and the same action — download and copy the latest version over the existing files.

Installation and Configuration Guide

Preparing Docker Server

Docker MinIO module WHMCS

Order now | Download | FAQ | n8n

To install the Docker server for this module, please follow the instructions at the following link:

https://doc.puq.info/books/docker-modules/page/installing-docker-for-puqcloud-modules

Installation and Configuration Guide

Setting up n8n workflow

Docker MinIO module WHMCS

Order now | Download | FAQ | n8n

Overview

The Docker MinIO WHMCS module uses a specially designed workflow for n8n to automate deployment processes. The workflow provides an API interface for the module, receives specific commands, and connects via SSH to a server with Docker installed to perform predefined actions.

Prerequisites

Installation Steps

Install the Required Workflow on n8n

You have two options:

Option 1: Use the Latest Version from the n8n Marketplace

Option 2: Manual Installation

n8n Workflow API Backend Setup for WHMCS

Configure API Webhook and SSH Access

Modify Template Parameters

In the Parameters block of the template, update the following settings:

Do not modify the following technical parameters:

Deploy-docker-compose

In the Deploy-docker-compose element, you have the ability to modify the Docker Compose configuration, which will be generated in the following scenarios:

nginx

In the nginx element, you can modify the configuration parameters of the web interface proxy server.

Bash Scripts

Management of Docker containers and all related procedures on the server is carried out by executing Bash scripts generated in n8n. These scripts return either a JSON response or a string.

Installation and Configuration Guide

Add server

Docker MinIO module WHMCS

Order now | Download | FAQ | n8n

Add a new server to the system WHMCS

Navigate to: System Settings → Servers → Add New Server

Attention: Important Information The hostname field represents the actual domain of the server running Docker and must match the server_domain parameter in the n8n workflow. If they do not match, communication will not function correctly. Additionally, this domain must be configured so that all its subdomains resolve to the IP address of the server running Docker.


Module settings

In the Server Details section, select the "PUQ Docker MinIO" module and enter the correct username and password for the API endpoint in the n8n workflow.

Additionally, in the Access Hash field, insert the URL of the API entry point for the n8n workflow.

Add server - Module settings

Installation and Configuration Guide

Product Configuration

Docker MinIO module WHMCS

Order now | Download | FAQ | n8n

Add new product to WHMCS

Navigate to: System Settings → Products/Services → Create a New Product

In the Module Settings section, select the "PUQ Docker MinIO" module.


Configuration parameters

Parameter Description
License key A pre-purchased license key for the PUQ Docker MinIO module. For the module to work correctly, the key must be active
Disk space (GB) Allocated disk space for the Docker container in GB
CPU CPU cores allocated for the Docker container (e.g., 0.1, 1, 2)
RAM (GB) RAM allocated to the Docker container in GB (e.g., 0.1, 1, 2)
Main domain The primary domain for the web interface of the application. If not set, the main domain will be taken from the hostname parameter in the server settings
Subdomain A personal subdomain assigned to each service. If left empty or if the subdomain is already taken, it will be automatically generated
Link to instruction URL to a guide that will be displayed in the client panel if provided
Notification at % The percentage threshold for disk space usage that triggers a notification to the client. Set 0 to disable
Notification email template The email template for the notification that will be sent when the threshold is reached

Supported Macros for Subdomain

Macro Description
{user_id} Client ID
{service_id} Service ID
{random_digit_x} Random number (x defines the length)
{random_letter_x} Random letter (x defines the length)
{unixtime} Unix timestamp
{year} Year
{month} Month
{day} Day
{hour} Hour
{minute} Minute
{second} Second

Default subdomain template: {user_id}-{service_id}-{second}


Product configuration

Installation and Configuration Guide

Metric Billing

Docker MinIO module WHMCS

Order now | Download | FAQ | n8n

To bill certain metrics separately, you can use the standard WHMCS Metric Billing mechanism.

To configure it, you need to enable the required metrics and set the desired prices. Metrics work based on the standard WHMCS mechanism, the description of which can be found here:

https://docs.whmcs.com/products/configuration-options/usage-billing/

The module provides the following metrics:

Metric Description
Traffic IN (GB) Incoming network traffic in gigabytes
Traffic OUT (GB) Outgoing network traffic in gigabytes

Metric Billing configuration

Installation and Configuration Guide

Email Template (puqDockerMinIO Welcome Email)

Docker MinIO module WHMCS

Order now | Download | FAQ | n8n

Create an email template for customer notifications.

Navigate to: System Settings → Email Templates → Create New Email Template


Template configuration

Parameter Value
Email Type Product/service
Unique Name puqDockerMinIO Welcome Email

Email Subject

MinIO Order Information

Email Body

Dear {$client_name},

Your order has been accepted for implementation.

Product/Service: {$service_product_name}
Payment Method: {$service_payment_method}
Amount: {$service_recurring_amount}
Billing Cycle: {$service_billing_cycle}
Next Due Date: {$service_next_due_date}


The installation and setup of your MinIO instance is in progress.
Within the next 4 minutes, you will be able to use your MinIO instance.

Upon your first login, you will need to create an account.

Here is the link to your MinIO server.

https://console.{$service_domain}/
Thank you for choosing us.

{$signature}

Available template variables

Variable Description
{$client_name} Client full name
{$service_product_name} Product/service name
{$service_payment_method} Payment method
{$service_recurring_amount} Recurring amount
{$service_billing_cycle} Billing cycle
{$service_next_due_date} Next due date
{$service_domain} Service domain

Note: Standard WHMCS merge fields are also available in this template.

Installation and Configuration Guide

Email Template (puqDockerMinIO Update Email)

Docker MinIO module WHMCS

Order now | Download | FAQ | n8n

Create an email template for customer notifications.

Navigate to: System Settings → Email Templates → Create New Email Template


Template configuration

Parameter Value
Email Type Product/service
Unique Name puqDockerMinIO Update Email

Email Subject

MinIO Update Information

Email Body

Dear {$client_name},

Your instance is currently being updated.
You will be able to use your MinIO server again within 3 minutes.

Here is the link to your MinIO server.

https://console.{$service_domain}/
Thank you for choosing us.

{$signature}

Available template variables

Variable Description
{$client_name} Client full name
{$service_domain} Service domain

Note: Standard WHMCS merge fields are also available in this template.

Installation and Configuration Guide

Email Template (puqDockerMinIO Notification disk limit)

Docker MinIO module WHMCS

Order now | Download | FAQ | n8n

Create an email template for customer notifications.

Navigate to: System Settings → Email Templates → Create New Email Template


Template configuration

Parameter Value
Email Type Product/service
Unique Name puqDockerMinIO Notification disk limit

Email Subject

Disk space usage {$disk_used_percentage}%

Email Body

Dear {$client_name},

We want to inform you that your MinIO service is running low on disk space.
Please take action to prevent service interruptions.

Service Details:

Product/Service: {$service_product_name}
Domain: {$service_domain}
Total Disk Space: {$disk_total}
Used Disk Space: {$disk_used} ({$disk_used_percentage}%)
Consider freeing up space or upgrading your plan if needed.

{$signature}

Available template variables

Variable Description
{$client_name} Client full name
{$service_product_name} Product/service name
{$service_domain} Service domain
{$disk_total} Total disk space
{$disk_used} Used disk space
{$disk_used_percentage} Used disk space percentage

Note: Standard WHMCS merge fields are also available in this template.

Client Area

Overview of the client-facing features available in the Docker MinIO WHMCS module, including the home screen, IP access control, reinstall, and metrics.

Client Area

Home screen

Docker MinIO module WHMCS

Order now | Download | FAQ | n8n

Client Area Overview — Logical Structure

The main screen of the client area is divided into three logical sections:

  1. Navigation Block
    • "User Manual": Opens the official documentation or user guide (link configured by administrator).
  2. Connection Details Block
    • Web Console: Direct link to access the MinIO web console with copy button.
    • REST API: Link to the MinIO REST API endpoint with copy button.
    • Username: MinIO account username with copy button.
    • Password: MinIO account password with show/hide toggle and copy button.
    • Change Administrator Password: Button to reset the administrator password.
  3. Resource Usage Block
    • Displays real-time statistics on container resource usage:
      • Status: Current container state (Running / Stopped / Paused).
      • CPU Usage: Number of allocated CPUs and current load.
      • Memory Usage: RAM consumption with progress bar.
      • Disk Usage: Storage consumption within the container with progress bar.
    • This section includes a Refresh button for real-time data updates.
  4. Application Information
    • Version: Displays the installed MinIO version.
    • Administrator: Indicates the primary administrator of the application.
    • Users: Shows active users associated with the instance.

This clear structure ensures that users have quick access to their application, real-time monitoring of resource usage, and essential management functions in one place.

Client area home screen - Connection details

Client area home screen - Container and App

Sidebar Navigation

The client area sidebar provides quick access to:

Client area sidebar

Client Area

IP Access Control

Docker MinIO module WHMCS

Order now | Download | FAQ | n8n

In the client area, the client can configure access to their resource by entering allowed IP addresses in the appropriate section on the Restrict by IP page.

If no IP addresses are specified, access is open to all IP addresses.

The page displays the service URLs (Web Console and REST API) and provides separate text areas for entering allowed IPs for each endpoint — one IP address per line.

IP Access Control

Client Area

Reinstall

Docker MinIO module WHMCS

Order now | Download | FAQ | n8n

The client has the option to fully reinstall the application, which will result in complete data loss.

This action can be performed on the Reinstall page, which also includes protection against accidental reinstallation.

To proceed with the reinstall, the client must enter the word REINSTALL in capital letters and confirm the action.

Reinstall page

Client Area

Metrics

Docker MinIO module WHMCS

Order now | Download | FAQ | n8n

If you use metrics for application traffic billing, the Metrics tab will display the usage statistics for the metrics.

The following metrics are available:

Metric Description
Traffic IN (GB) Incoming network traffic in gigabytes
Traffic OUT (GB) Outgoing network traffic in gigabytes

The Metrics tab is accessible from the client area navigation alongside the Manage tab.

Admin Area

Administrative features and tools available in the WHMCS admin panel for managing Docker MinIO services.

Admin Area

Product Information

Docker MinIO module WHMCS

Order now | Download | FAQ | n8n

Admin Panel — Container Management Overview

The admin panel is structured into two main sections with additional control buttons for container management.

Module Commands

API Connection Status

Displays the current connection status to the n8n workflow API endpoint.

Container Status & Resource Monitoring

Field Description
Status Current state of the container (Running / Stopped)
Name Unique identifier and domain of the container
CPU Usage Current CPU load with progress bar
Memory Usage RAM consumption in real-time with progress bar
Disk IO Disk input/output operations
Disk Mounted Mounted disk usage with progress bar
Disk File Actual disk image size
Network IO Network traffic statistics

Additional controls:

Application Information

Field Description
Version Installed MinIO version
Users List of assigned users with access to the application

Metric Statistics

Metric Description
Traffic IN (GB) Incoming network traffic
Traffic OUT (GB) Outgoing network traffic

Admin area - Service details and container status

Admin area - App and metric statistics