Docker Environment Variables¶
Zammad’s docker stack supports these environment variables.
Zammad¶
Variable |
Default Value |
Description |
---|---|---|
VERSION |
(current stable version of Zammad) |
Allows customization of the Zammad image tag. Example: |
AUTOWIZARD_JSON |
|
This variable allows you to provide initial configuration data for your instance. Autowizard JSON is out of scope of this documentation, however this example file should help. |
ZAMMAD_WEB_CONCURRENCY |
|
Allows spawning |
ZAMMAD_SESSION_JOBS
_CONCURRENT
|
|
Allows spawning |
ZAMMAD_PROCESS_SCHEDULED
_JOBS_WORKERS
|
|
Allows spawning |
ZAMMAD_PROCESS_DELAYED
_JOBS_WORKERS
|
|
Allows spawning |
RAILS_TRUSTED_PROXIES |
|
By default Zammad trusts localhost proxies only. |
MEMCACHE_SERVERS |
|
Provide your own Memcached instance to Zammad if you already have one. |
REDIS_URL |
|
Provide your own Redis instance if you already have one. Please note that this method currently does not allow authentication. |
Elasticsearch¶
Variable |
Default Value |
Description |
---|---|---|
ELASTICSEARCH_ENABLED |
|
Setting this variable to false will allow you to run your Zammad without Elasticsearch. Please note that we strongly advise against doing so. |
ELASTICSEARCH_HOST |
|
Provide a host name or address to your external Elasticsearch cluster. |
ELASTICSEARCH_PORT |
|
Provide a different port for Elasticsearch if needed. |
ELASTICSEARCH_SCHEMA |
|
By default Elasticsearch is reachable via HTTP. |
ELASTICSEARCH_NAMESPACE |
|
With this name space all Zammad related indexes will be created. Change this if you’re using external clusters. |
ELASTICSEARCH_REINDEX |
|
By default the docker-compose will always re-index upon a restart. On big installations this may be troublesome. Warning Disabling this setting requires you to re-index your search index manually whenever that’s needed by upgrading to a new Zammad version! |
ELASTICSEARCH_SSL_VERIFY |
|
Allows you to let the compose scripts ignore self signed SSL certificates for your Elasticsearch installation if needed. |
PostgreSQL¶
Variable |
Default Value |
Description |
---|---|---|
POSTGRESQL_HOST |
|
Host name of your PostgreSQL server. Use your own if you already have one. |
POSTGRESQL_PORT |
|
Adjust the Port of your PostgreSQL server. |
POSTGRESQL_USER |
|
The database user for Zammad. |
POSTGRESQL_PASS |
|
The password of Zammads database user. |
POSTGRESQL_DB |
|
Zammads database to use. |
POSTGRESQL_OPTIONS |
|
Additional postgresql params to be appended to the database URI. |
POSTGRESQL_DB_CREATE |
|
By default we will create the required database. Note On own database servers this setting might be troublesome. |
nginx¶
Variable |
Default Value |
Description |
---|---|---|
NGINX_EXPOSE_PORT |
|
The port to be exposed for accessing the Zammad stack from outside. Change this to another value if you already have an existing service listening on this port. |
NGINX_PORT |
|
The internal port the nginx service will listen on. |
NGINX_SERVER_NAME |
|
By default the Nginx container of Zammad will respond to all request. You can provide your IP / FQDN if you want to. |
NGINX_SERVER_SCHEME |
|
If the Nginx container for Zammad is not the upstream server
(aka you’re using another proxy in front of nginx) |
ZAMMAD_RAILSSERVER_HOST |
|
Host name of the rails server container. |
ZAMMAD_RAILSSERVER_PORT |
|
Port of Zammads rails server. See also: Configuration via Environment Variables |
ZAMMAD_WEBSOCKET_HOST |
|
Host name of Zammads websocket server. |
ZAMMAD_WEBSOCKET_PORT |
|
Port of Zammads websocket server. See also: Configuration via Environment Variables |
Tip
Can’t login because of CSRF token errors?
This usually affects systems with more than one proxy server only. For this to function you may have to tell your web server directly which connection type was used. Only use the options described below if you’re sure. They may cause security issues.
The following options expect HTTPS connections which should be your goal.
- nginx
Within your virtual host configuration, locate both directives
proxy_set_header X-Forwarded-Proto
and replace$scheme
byhttps
.- apache2
Within your virtual host configuration just above the first
ProxyPass
directive insert:RequestHeader set X_FORWARDED_PROTO 'https' RequestHeader set X-Forwarded-Ssl on