Skip to main content

Configuration

The panel reads its settings from /etc/commypanel/env. The installer writes it; you rarely need to edit it. After a change, restart the panel's services so they read it:

sudo systemctl restart commypanel-queue@1 commypanel-queue@2 commypanel-scheduler
sudo systemctl restart 'php*-fpm'

:::warning Keep APP_KEY APP_KEY encrypts the secrets the panel stores (environment variables, tokens, database passwords). Never change it, and keep a copy somewhere safe, apart from your backups: a restored database cannot be read without it. :::

Everything below is optional, and the defaults are fine for most servers. Boolean values are true or false.

The panel​

SettingDefaultWhat it does
COMMYPANEL_TOOLS_PORT2053The port the database tools are served on.
PANEL_INTERNAL_PORT8081Loopback-only port where nginx hands requests to the panel.
SESSION_LIFETIME120Minutes of inactivity before a sign-in ends.
AUTH_PASSWORD_TIMEOUT10800Seconds a password confirmation stays valid.
DISK_WARN_PERCENT, DISK_CRITICAL_PERCENT85, 95Disk usage at which the panel warns and shows an error.

Outbound calls​

SettingDefaultWhat it does
COMMYPANEL_UPDATE_CHECKtruefalse stops every check for new releases, including the manual one.
COMMYPANEL_ADDRESS_LOOKUPtruefalse stops the one lookup of the server's address through api.ipify.org, used only on servers behind a NAT. You then enter the address by hand.

Deployments​

SettingDefaultWhat it does
DEPLOY_PORT_START, DEPLOY_PORT_END20000, 29999The local ports (on 127.0.0.1) handed to app containers.
DEPLOY_HEALTH_TIMEOUT60Seconds to wait for a new container to answer its health check.
DEPLOY_DRAIN_SECONDS10Seconds the old container keeps running after the traffic moved.
DEPLOY_KEEP_IMAGES3Release images kept per app, so rollbacks stay possible.
DEPLOY_RELEASE_TIMEOUT600Seconds a release command may run.
DEPLOY_GIT_TIMEOUT300Seconds a git clone may take.
UPLOAD_MAX_ARCHIVE_MB64Largest accepted upload. nginx and PHP-FPM are configured to match.
UPLOAD_MAX_UNPACKED_MB500Largest size an upload may unpack to.
UPLOAD_MAX_FILES20000Most files an upload may contain.

HTTPS​

SettingDefaultWhat it does
ACME_STAGINGfalse in productionUse Let's Encrypt's staging CA, whose certificates browsers do not trust.
ACME_RENEW_BEFORE_DAYS30Renew a certificate when fewer days than this remain.
ACME_RETRY_AFTER_HOURS6Wait this long before retrying a failed issuance.

Databases and backups​

SettingDefaultWhat it does
DATABASE_MEMORY_MB1024Memory limit of a database server container.
DATABASE_READY_TIMEOUT240Seconds a new database server may take to answer its first query.
BACKUPS_KEEP7Panel backups kept on the server.
BACKUPS_KEEP_DATABASES7Dumps kept of each database.
BACKUPS_KEEP_VOLUMES3Archives kept of each volume.

Installer settings​

These are set when you run the installer, for example curl ... | sudo COMMYPANEL_ALLOW_UNSUPPORTED=1 bash.

SettingWhat it does
COMMYPANEL_ALLOW_UNSUPPORTED=1Install on a distribution that is not supported, at your own risk.
COMMYPANEL_ALLOW_VULNERABLE_PHP=1Install even if the distribution's PHP does not yet have a critical security fix, at your own risk. See Maintenance.
COMMYPANEL_REPODownload releases from another repository, for example a fork.