helpdesk

Deploy LibreDesk in one click

Modern, open-source omnichannel customer support desk with live chat, email, a help center, and automations. A self-hosted alternative to Zendesk and Help Scout.

TemplatesLibreDesk

LibreDesk screenshot

Deploy

What gets deployed

Image ghcr.io/stackblaze/libredesk (Stackblaze fork of LibreDesk). First boot installs the schema and creates the System user. Sign in with email System and the password in LIBREDESK_SYSTEM_USER_PASSWORD (generated once at create; change it after login). Then set the public URL in Admin settings — app.root_url defaults to http://localhost:9000, which breaks links and the chat widget. The encryption key is generated once; do not change it after data exists. Uploads persist on the shared volume. Notification email is stored in Admin → Settings: copy SMTP_HOST, SMTP_PORT, SMTP_USER, SMTP_PASSWORD, and SMTP_FROM (STARTTLS on 587). Customer inboxes are added in the LibreDesk admin.

This stack

Web

LibreDesk server

PostgreSQL

managed database · TCP:5432

Valkey

managed cache · TCP:6379

Email

managed other · TCP:587

Image ghcr.io/stackblaze/libredesk (Stackblaze fork of LibreDesk). First boot installs the schema and creates the System user. Sign in with email System and the password in LIBREDESK_SYSTEM_USER_PASSWORD (generated once at create; change it after login). Then set the public URL in Admin settings — app.root_url defaults to http://localhost:9000, which breaks links and the chat widget. The encryption key is generated once; do not change it after data exists. Uploads persist on the shared volume. Notification email is stored in Admin → Settings: copy SMTP_HOST, SMTP_PORT, SMTP_USER, SMTP_PASSWORD, and SMTP_FROM (STARTTLS on 587). Customer inboxes are added in the LibreDesk admin.

After you deploy

Image ghcr.io/stackblaze/libredesk (Stackblaze fork of LibreDesk). First boot installs the schema and creates the System user. Sign in with email System and the password in LIBREDESK_SYSTEM_USER_PASSWORD (generated once at create; change it after login). Then set the public URL in Admin settings — app.root_url defaults to http://localhost:9000, which breaks links and the chat widget. The encryption key is generated once; do not change it after data exists. Uploads persist on the shared volume. Notification email is stored in Admin → Settings: copy SMTP_HOST, SMTP_PORT, SMTP_USER, SMTP_PASSWORD, and SMTP_FROM (STARTTLS on 587). Customer inboxes are added in the LibreDesk admin.

Reference

Environment variables

Set at deploy. Empty values are yours to fill.

VariableDescriptionRequired
LIBREDESK_APP__ENVDefault: prodOptional
LIBREDESK_APP__LOG_LEVELDefault: infoOptional
LIBREDESK_APP__ENCRYPTION_KEYDefault: {{KUBERO_GEN_HEX:32}}Optional
LIBREDESK_APP__SERVER__ADDRESSDefault: 0.0.0.0:9000Optional
LIBREDESK_SYSTEM_USER_PASSWORDDefault: Aa1!{{KUBERO_GEN_ALNUM:16}}Optional
LIBREDESK_DB__HOSTDefault: $(PGHOST)Optional
LIBREDESK_DB__PORTDefault: $(PGPORT)Optional
LIBREDESK_DB__USERDefault: $(PGUSER)Optional
LIBREDESK_DB__PASSWORDDefault: $(PGPASSWORD)Optional
LIBREDESK_DB__DATABASEDefault: $(PGDATABASE)Optional
LIBREDESK_DB__SSL_MODEDefault: disableOptional
LIBREDESK_REDIS__URLDefault: $(REDIS_URL)Optional
LIBREDESK_UPLOAD__PROVIDERDefault: fsOptional
LIBREDESK_UPLOAD__FS__UPLOAD_PATHDefault: uploadsOptional

Environment variables · Persistent disks · Custom domains

Ready to deploy LibreDesk?

One click. Dependencies pre-wired. No infrastructure to manage.

One-click deploy
Managed databases
Persistent disks
Custom domains
Env vars