Skip to content

Environment configuration

Global settings for wanderer can be adjusted via environment variables. If you deployed wanderer with docker you can change the environment variables directly in the docker-compose.yaml. If you deployed wanderer on bare-metal you can change the environment variables in the launch script.

These variables are shared between all three services.

Environment VariableDescriptionDefault
MEILI_URLIP or hostname (including the port) of your meilisearch instancehttp://search:7700
MEILI_MASTER_KEYMaster API key for your meilisearch instancevODkljPcfFANYNepCHyDyGjzAMPcdHnrb6X5KyXQPWo

Since we use an unmodified installation of meilisearch you can use all variables listed in meilisearch’s documentation. You can find a full list over here.

Environment VariableDescriptionDefault
MEILI_NO_ANALYTICSDisable meilisearch telemetrytrue
Environment VariableDescriptionDefault
ORIGINPublic IP or hostname (including the port) of your wanderer frontend (must be the same as in the frontend config)http://localhost:3000
POCKETBASE_ENCRYPTION_KEYValid 32 character AES key. Used to encrypt secrets
POCKETBASE_CRON_SYNC_SCHEDULEValid cron expression. Sets how often installed plugins are synced0 2 ** *
POCKETBASE_SMTP_ENABLEDEnables or disables SMTP functionality. Accepted values are true or falsefalse
POCKETBASE_SMTP_SENDER_ADDRESSThe email address used as the “From” address in outgoing emails
POCKETBASE_SMTP_SENDER_NAMEThe display name shown as the sender in outgoing emails
POCKETBASE_SMTP_HOSTThe hostname or IP address of the SMTP server
POCKETBASE_SMTP_PORTThe port number used to connect to the SMTP server
POCKETBASE_SMTP_USERNAMEThe username used to authenticate with the SMTP server
POCKETBASE_SMTP_PASSWORDThe password used to authenticate with the SMTP server
REGION_ARCHIVE_CRON_SCHEDULEValid cron expression (UTC). Sets when offline region archives are rebuilt0 3 * * *
REGION_ARCHIVE_EXTRACT_TIMEOUTMaximum duration a single region archive extraction may take, as a Go duration string (e.g. 45m)30m

Plugins are not configured through an environment variable. See Plugin installation for installing runtime plugin bundles and configuring self-hosted connector trust settings.

Environment VariableDescriptionDefault
ORIGINPublic IP or hostname (including the port) of your wanderer instancehttp://localhost:3000
BODY_SIZE_LIMITMaximum allowed upload sizeInfinity
PUBLIC_POCKETBASE_URLIP or hostname (including the port) of your pocketbase instancehttp://db:8090
PUBLIC_DISABLE_SIGNUPDisables signup option for new usersfalse
PUBLIC_PRIVATE_INSTANCESetting this to true will block visitors from viewing content without an accountfalse
PUBLIC_MAP_MAX_POLYLINESMaximum number of polylines (route previews) to show simultaneously on the map, based on result density100
UPLOAD_FOLDERFolder from which wanderer auto-uploads trails/app/uploads
UPLOAD_USERUsername for the account with which wanderer auto-uploads trails
UPLOAD_PASSWORDPassword for the account with which wanderer auto-uploads trails

These variables configure where the mobile app loads map vector tiles, fonts (glyphs), and sprites from. They are set on the web service. See Custom map tiles & assets for details.

Environment VariableDescriptionDefault
TILE_SERVER_URLVector tile URL template ({z}/{x}/{y}) served to the mobile appProtomaps API (requires PROTOMAPS_API_KEY)
PROTOMAPS_API_KEYAPI key for the default Protomaps tile service; only used when TILE_SERVER_URL is unset
MAP_ASSETS_URLBase URL for map fonts (glyphs) and spriteshttps://protomaps.github.io/basemaps-assets

These variables configure server-side requests to Valhalla, Nominatim and Overpass.

Environment VariableDescriptionDefault
VALHALLA_URLValhalla API URL used for auto-routing and elevation datahttps://valhalla1.openstreetmap.de
NOMINATIM_URLNominatim API URL used for (reverse) geocodinghttps://nominatim.openstreetmap.org
OVERPASS_API_URLOverpass API URL used for map points of interesthttps://overpass-api.de

When *_URL is unset, the backend falls back to legacy PUBLIC_*_URL.

If your API endpoints use certificates signed by a private CA, add the CA bundle and set NODE_EXTRA_CA_CERTS for the web service.

Environment VariableDescriptionDefault
NODE_EXTRA_CA_CERTSPath to an additional CA bundle used by Node.js TLS connections

Example (docker-compose.yml):

services:
web:
environment:
NODE_EXTRA_CA_CERTS: /etc/ssl/private-ca/ca.pem
volumes:
- ./certs/ca.pem:/etc/ssl/private-ca/ca.pem:ro

Provider plugin connector CAs are configured per connector when a plugin supports custom TLS. They are not read from NODE_EXTRA_CA_CERTS.