Version: 1.7.50
OpenPanel Folder Structure
OpenPanel uses the following files and directories:
Configuration:
/etc/openpanel/
โโโ bind9/ - Configuration for DNS service.
โโโ caddy/ - Caddy webserver configuration and data.
โโโ clamav/ - ClamAV service configuration.
โโโ docker/ - Docker configuration.
โโโ ftp/ - Settings and user data for FTP service.
โโโ goaccess/ - Configuration for GoAccess reports.
โโโ mysql/ - Database schema.
โโโ nginx/ - Nginx webserver configuraton [DEPRECATED].
โโโ openadmin/ - Settings for the admin panel.
โโโ openpanel/ - Settings for the user panel.
โโโ php/ - PHP blueprints.
โโโ services/ - Services configuration files.
โโโ skeleton/ - Files used for new user accounts.
โโโ ssh/ - SSH configuration and motd.
โโโ varnish/ - Varnish configuration - [DEPRECATED].
Default configuration can be viewed here.
User Filesโ
All files for a user are stored in their /home directory: /home/$docker_context/:
/home/stefan/
โโโ docker-compose.yml - Contains all services that user can run.
โโโ .env - Contains ports, resource limits and passwrods for services.
โโโ httpd.conf - main configuration that is used IF user runs Apache webserver.
โโโ nginx.conf - main configuration that is used IF user runs Nginx webserver.
โโโ openresty.conf - main configuration that is used IF user runs OpenResty webserver.
โโโ openlitespeed.conf - main configuration that is used IF user runs OpenLitespeed webserver.
โโโ default.vcl - Varnish Configuration that is used if Varnish cache is enabled for user.
โโโ php.ini/ - PHP.INI files hat user can edit via 'OpenPanel > PHP > PHP.INI Editor' page.
โโโ crons.ini - Cron jobs that user can edit via 'OpenPanel > Cron Jobs' page.
โโโ backup.env - Backup configuration that user can edit via 'OpenPanel > Files > Backups' page.
โโโ my.cnf - MySQL root user logins that are used for ALL actions from the OpenPanel UI.
โโโ custom.cnf - MySQL Configuration that user can edit via 'OpenPanel > MySQL > Configuration' page.
โโโ postgre_custom.conf - PostgreSQL Configuration that user can edit via 'OpenPanel > PostgreSQL > Configuration' page.
โโโ pma.php - used to allow auto-login to phpMyAdmin from OpenPanel UI.
โโโ docker-data/ - All docker files: containers, images, volumes..
โ โโโ volumes/
โ โโโ $context_html_data/ - Website files (/var/www/html/ in 'OpenPanel > File Manager' page).
โ โโโ $context_mysql_data/ - MySQL storage (all databases).
โ โโโ $context_mysql_dumps/ - MySQL /tmp folder used for dumps.
โ โโโ $context_pg_data/ - PostgreSQL storage (all databases).
โ โโโ $context_webserver_data/ - VirtualHosts files for domains.
โโโ .config/ - systemd service files.
โโโ .docker/ - Docker service files.
โโโ bin/ - service files.
โโโ sockets/ - sockets for running services.
โโโ .bashrc - Sets path and docker host.
User Services filesโ
Certain files are shared across user services to provide Administrators with a single point of management. This enables faster updates and easier customization for all users. For example, it allows updating WP-CLI simultaneously for everyone or configuring OpenLiteSpeed consistently across all accounts.
/etc/openpanel/wordpress/wp-cli.phar- WP-CLI binnary used in OpenLitespeed and all PHP containers./etc/openpanel/openlitespeed/start.sh- Sets permissions and maps all individual VHosts files on OpenLitespeed./etc/openpanel/nginx/certs/- Self-signed SSL files for domains used inside user webservers./etc/openpanel/nginx/default_page.html- Landing page displayed on user domains if no files exist./etc/openpanel/mysql/scripts/dump.sh- Script used to generate mysql dumps when performing backups./etc/openpanel/mysql/phpmyadmin/config.inc.php- phpMyAdmin configuration file that allows auto-login from UI./etc/openpanel/php/ioncube/- Ioncube Loader files for PHP./etc/openpanel/php/ioncube_extension.ini- Ioncube Loader extension for PHP.
Shared Services filesโ
Files that are used by shared services like FTP, Caddy webserver and Mailserver.
/etc/openpanel/wordpress/wp-cli.phar- WP-CLI binnary used in OpenLitespeed and all PHP containers./etc/openpanel/wordpress/wp-cli.phar- WP-CLI binnary used in OpenLitespeed and all PHP containers.
Templates filesโ
Files that are used for new services/domains that users add.
/etc/openpanel/docker/compose/nodejs.yml- Used for new docker services via 'OpenPanel > AutoInstaller > NodeJS' page./etc/openpanel/docker/compose/python.yml- Used for new docker services via 'OpenPanel > AutoInstaller > Python' page./etc/openpanel/docker/daemon/rootless.json- Used for new users to configure docker rootless service./etc/openpanel/apache/httpd.conf- Main configuration file used for new users with Apache webserver./etc/openpanel/backups/backup.env- Template used for new user backups./etc/openpanel/backups/customized.template- Notifications template used for user backups./etc/openpanel/bind9/zone_template.txt- DNS zone template used for new domains with IPv4 set for the user./etc/openpanel/bind9/zone_template_ipv6.txt- DNS zone template used for new domains with IPv6 set for the user./etc/openpanel/bind9/zone_template_ipv6.txt- DNS zone template used for new domains with IPv6 set for the user./etc/openpanel/caddy/templates/domain.conf- Caddyfile used for new domains./etc/openpanel/caddy/templates/suspended_domain.html- Landing page displayed on suspended domains for a user./etc/openpanel/caddy/templates/suspended_user.html- Landing page displayed on domains for a suspended user./etc/openpanel/csf/csf.blocklists- CSF blocklists used when configuring Sentinel Firewall./etc/openpanel/mysql/user.cnf- Configuration file used for MySQL services.
Configuration filesโ
/etc/openpanel/caddy/templates/wp.rules- Rules used for hardening options in WP Manager./etc/openpanel/clamav/extensions.txt- List of extensions to scan using ClamAV (DEPRECATED)./etc/openpanel/csf/csf.blocklists- CSF blocklists used when configuring Sentinel Firewall./etc/openpanel/ftp/start_vsftpd.sh- Entrypoint for FTP service (creates accounts on startup)./etc/openpanel/ftp/vsftpd.conf- Vsftpd main configuration file./etc/openpanel/goaccess/goaccess.conf- GoAccess main configuration file./etc/openpanel/modules/- Custom plugins for OpenPanel UI./etc/openpanel/mysql/initialize/1.1/plans.sql- Initializes database on OpenPanel installation./etc/openpanel/mysql/host_mysql.cnf- Stores mysql logins for the OpenPanel installation./etc/openpanel/mysql/keys.txt- List of configuration keys editable from 'OpenPanel > MySQL > Configuration' page./etc/openpanel/mysql/mysqld.cnf- Configuration file for MySQL service./etc/openpanel/docker/templates/docker_apache_domain.conf- VirtualHosts template for new domains on Apache webserver./etc/openpanel/docker/templates/docker_litespeed_domain.conf- VirtualHosts template for new domains on OpenLitespeed webserver./etc/openpanel/docker/templates/docker_nginx_domain.conf- VirtualHosts template for new domains on Nginx webserver.- NOTE: list is incomplete, please refer to https://github.com/stefanpejcic/openpanel-configuration/tree/main for a full list.
Was this helpful?