Skip to content

stefanpejcic/OpenPanel

Repository files navigation

OpenPanel - Web Hosting Control Panel with Docker Isolation

OpenPanel is a web hosting control panel built on Docker. Every user gets a fully isolated environment: dedicated web server, dedicated database, private network, and scoped file storage - delivering VPS-grade security on shared hardware.

Available as a free community edition and a fully-supported commercial version.

What is OpenPanel?

OpenPanel is a web hosting control panel that uses Docker to give every hosting user a completely isolated environment. Unlike traditional control panels that share a single Apache, MySQL, or PHP runtime across all users, OpenPanel provisions a dedicated Docker context per user: each with their own web server container, database container, PHP-FPM containers, private network, and storage volume. The result: VPS-level isolation on shared hosting infrastructure, without the VPS price tag.

╔════════════════════════════════════════════════════════════════╗
β•‘                     πŸ–₯️  OPENPANEL SERVER                       β•‘
╠════════════════════════════════════════════════════════════════╣
β•‘  β€’ πŸŽ›οΈ OpenPanel - user control panel                           β•‘
β•‘  β€’ βš™οΈ OpenAdmin - administration panel                         β•‘
β•‘  β€’ 🌐 Caddy – Reverse Proxy & SSL                              β•‘
β•‘  β€’ πŸ” BIND9 – DNS Server                                       β•‘
β•‘  β€’ πŸ—„οΈ MySQL – User Management & Metadata                       β•‘
β•‘  β€’ 🐳 Docker Engine – Container Orchestration                  β•‘
β•šβ•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•
                                                   β”‚   
        β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
        β”‚                                          β”‚                                          β”‚
        β–Ό                                          β–Ό                                          β–Ό
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚           πŸ‘€ USER 1             β”‚ β”‚           πŸ‘€ USER 2             β”‚ β”‚           πŸ‘€ USER 3             β”‚ 
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚  🌐 Web Server:                 β”‚ β”‚  🌐 Web Server:                 β”‚ β”‚  🌐 Web Server:                 β”‚
β”‚  β€’ Nginx + Varnish              β”‚ β”‚  β€’ OpenLitespeed                β”‚ β”‚  β€’ Apache + Varnish             β”‚
β”‚                                 β”‚ β”‚                                 β”‚ β”‚                                 β”‚
β”‚  ⚑ Applications:               β”‚ β”‚  ⚑ Applications:               β”‚ β”‚  ⚑ Applications:               β”‚
β”‚  β€’ site1.com β†’ PHP 8.4          β”‚ β”‚  β€’ api.site.com β†’ Node.js 20.1  β”‚ β”‚  β€’ classic.com β†’ PHP 7.0        β”‚
β”‚  β€’ site2.com β†’ PHP 8.2          β”‚ β”‚  β€’ main.site.com β†’ PHP 8.3      β”‚ β”‚  β€’ modern.com β†’ PHP 8.1         β”‚
β”‚  β€’ legacy.com β†’ PHP 7.0         β”‚ β”‚                                 β”‚ β”‚  β€’ vintage.com β†’ PHP 5.6        β”‚
β”‚                                 β”‚ β”‚                                 β”‚ β”‚  β€’ api.site.com β†’ Python 3.11   β”‚
β”‚                                 β”‚ β”‚                                 β”‚ β”‚                                 β”‚
β”‚  πŸ—„οΈ  Databases:                 β”‚ β”‚  πŸ—„οΈ  Databases:                 β”‚ β”‚  πŸ—„οΈ  Databases:                 β”‚
β”‚  β€’ MySQL 8.0                    β”‚ β”‚  β€’ MariaDB 10.11                β”‚ β”‚  β€’ Percona MySQL                β”‚
β”‚  β€’ phpMyAdmin                   β”‚ β”‚  β€’ phpMyAdmin                   β”‚ β”‚  β€’ PostgreSQL                   β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚  πŸ“Š Resource Limits:            β”‚ β”‚  πŸ“Š Resource Limits:            β”‚ β”‚  πŸ“Š Resource Limits:            β”‚
β”‚  β€’ CPU: 2 cores                 β”‚ β”‚  β€’ CPU: 4 cores                 β”‚ β”‚  β€’ CPU: 1 core                  β”‚
β”‚  β€’ RAM: 4 GB                    β”‚ β”‚  β€’ RAM: 8 GB                    β”‚ β”‚  β€’ RAM: 2 GB                    β”‚
β”‚  β€’ Storage: 50 GB SSD           β”‚ β”‚  β€’ Storage: 100 GB SSD          β”‚ β”‚  β€’ Storage: 25 GB SSD           β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

Why choose OpenPanel for your hosting business?

OpenPanel offers a distinct advantage over other hosting panels by providing each user with an isolated environment and tools to fully manage it. This ensures that your users enjoy full control over their environment, simillar to a VPS experience. They can effortlessly run multiple PHP versions, modify server configurations, view domain logs, restart services, set limits, configure backups and more.

Why use OpenPanel for your hosting business?

OpenPanel vs OpenAdmin

  • The OpenAdmin offers an administrator-level interface where you can efficiently handle tasks such as creating and managing users, setting up hosting plans, and editing OpenPanel settings.
  • The OpenPanel interface is the client-level panel where end-users can manage their containers: edit settings, configure limits, manage backups, create websites and more.

Supported OS

OpenPanel is a truly OS-agnostic control panel. Supported OS:

Operating System Versions Notes
Ubuntu 22, 24, 26 24.04 is recommended for AMD CPU
Debian 10, 11, 12, 13
AlmaLinux 9.5, 10 9.5 is recommended for ARM CPU
RockyLinux 9.6, 10 On Rocky 10, you must manually switch from nftables to iptables first β€” see #1472
CentOS 9.5

Installation

Install on any supported VPS or dedicated server with a single command:

bash <(curl -sSL https://openpanel.org)

For full installation options and configuration flags: https://openpanel.com/install

Documentation

Team

Petar Ćurić

Special thanks to all contributors for extending and improving OpenPanel.

Contribute

Check out CONTRIBUTING.md for more information on how to help with openpanel.

License

  • OpenAdmin and OpenPanel UI are distributed under EULA.
  • OpenCLI and configuration files are distributed under Commons Attribution-NonCommercial (CC BY-NC) license.

✨ All openpanel docs are hosted on openpanel.com ✨


Footnotes

  1. not actively maintained ↩

About

A highly customizable web hosting control panel built around containers

Topics

Resources

Contributing

Security policy

Stars

Watchers

Forks

Contributors