Skip to main content
libredesk ships as a single binary and needs PostgreSQL and Redis to run. Install it with Docker, from a release binary, or from source.

Installation methods

Encryption key

app.encryption_key encrypts stored secrets such as inbox passwords. It must be exactly 32 characters. Generate one with openssl rand -hex 16. Set it before the first start and do not change it, or saved secrets can no longer be read.

Configuration via environment variables

Instead of using a config.toml file, you can configure libredesk entirely through environment variables.
  • All environment variables use the LIBREDESK_ prefix
  • Use double underscore (__) for nested configuration keys
  • To use environment variables exclusively (without a config file), pass --config=""
Example:

Command-line flags

Rate limits

Public endpoints are rate limited per client IP. Change the limits in config.toml. We recommend running libredesk behind Nginx as a reverse proxy. Install nginx if you don’t have it:
The proxy must set X-Client-IP to $remote_addr. libredesk reads this header to identify the client for rate limiting and audit logs, and without it every request looks like it came from the proxy.
Save the following as /etc/nginx/sites-available/libredesk:
Then enable it and reload nginx: