dawarich_app
Docker app from Pa7rickStar's Repository
Overview
Media gallery
1 / 3Requirements
- dawarich_app - Dawarich web application including Sidekiq worker for background jobs
- dawarich_db - PostGIS database
- dawarich_redis - Redis database
Download Statistics
Total Downloads Over Time
Related apps
Explore more like this
Explore allLinks
Details
freikin/dawarich:latestRuntime arguments
- Web UI
http://[IP]:[PORT:3000]/- Network
dawarich- Shell
sh- Privileged
- false
- Extra Params
--entrypoint=web-entrypoint.sh --restart=unless-stopped --stop-timeout=60 --health-cmd='wget -qO- http://127.0.0.1:3000/api/v1/health | grep -q "\"status\"[[:space:]]*:[[:space:]]*\"ok\"" || exit 1' --health-interval=10s --health-retries=30 --health-start-period=30s --health-timeout=10s
Template configuration
Host port for the Dawarich web interface (container port 3000).
- Target
- 3000
- Default
- 3000
Path to watch for imports
- Target
- /var/app/tmp/imports/watched
- Default
- /mnt/cache/appdata/dawarich/imports
Path to store application data
- Target
- /var/app/storage
- Default
- /mnt/cache/appdata/dawarich/storage
Path to store database data
- Target
- /dawarich_db_data
- Default
- /mnt/cache/appdata/dawarich/db_data
Path to web files
- Target
- /var/app/public
- Default
- /mnt/cache/appdata/dawarich/wwwroot
Signs sessions and cookies, and derives encryption keys that aren't set explicitly. Required in production. Generate a value with openssl rand -hex 64 and keep it: changing it signs everyone out and can make encrypted data unreadable.
- Target
- SECRET_KEY_BASE
Application hosts, provide multiple if you want your Dawarich instance to be available by multiple domains/ip addresses. Don't put protocols here, only host names.
- Target
- APPLICATION_HOSTS
- Default
- localhost,127.0.0.1,::1
Application protocol. Change to https if you want your Dawarich instance to be served via SSL
- Target
- APPLICATION_PROTOCOL
- Default
- http|https
Public hostname used to build absolute URLs in outgoing emails (family invitations, digest emails, password resets). Required in production - leaving it unset will cause email delivery to fail with a URL generation error. No protocol, no trailing slash. Example: dawarich.example.com.
- Target
- DOMAIN
Time zone. Full list of supported timezones available on Github
- Target
- TIME_ZONE
- Default
- Europe/London
Distance unit. For miles, change to mi. All settings still should be provided in meters/kilometers
- Target
- DISTANCE_UNIT
- Default
- km|mi
Minimum minutes spent in a city
- Target
- MIN_MINUTES_SPENT_IN_CITY
- Default
- 60
Database host
- Target
- DATABASE_HOST
- Default
- dawarich_db
Database username
- Target
- DATABASE_USERNAME
- Default
- postgres
Database password
- Target
- DATABASE_PASSWORD
- Default
- password
Database name. An existing dawarich_development database remains usable when RAILS_ENV is production.
- Target
- DATABASE_NAME
- Default
- dawarich_development
Database port
- Target
- DATABASE_PORT
- Default
- 5432
Connection pool size for the Dawarich database
- Target
- RAILS_MAX_THREADS
- Default
- 5
Redis URL. Redis 8 is the default; Valkey also works
- Target
- REDIS_URL
- Default
- redis://dawarich_redis:6379
Redis cache database
- Target
- RAILS_CACHE_DB
- Default
- 0
Redis job queue database
- Target
- RAILS_JOB_QUEUE_DB
- Default
- 1
Redis WebSocket database
- Target
- RAILS_WS_DB
- Default
- 2
Set to true if you're self-hosting Dawarich
- Target
- SELF_HOSTED
- Default
- true|false
Application environment. Self-hosted instances should use `production`. `development` is for working on Dawarich itself: it reloads code when it changes and logs every SQL query. See Switching an existing instance to production: https://dawarich.app/docs/self-hosting/environment-variables/#switching-an-existing-instance-to-production.
- Target
- RAILS_ENV
- Default
- production|development
Run background jobs inside the web process. Leave it unset when you run a separate worker.
- Target
- SIDEKIQ_EMBEDDED
- Default
- true|false
Number of web worker processes. Keep 0 with embedded jobs.
- Target
- WEB_CONCURRENCY
- Default
- 0
Background job threads. More info on Sidekiq docs
- Target
- BACKGROUND_PROCESSING_CONCURRENCY
- Default
- 2
Sidekiq dashboard username
- Target
- SIDEKIQ_USERNAME
Sidekiq dashboard password
- Target
- SIDEKIQ_PASSWORD
OIDC client ID from your identity provider
- Target
- OIDC_CLIENT_ID
Enable archival of raw import data. When enabled, original import files are preserved for potential re-processing.
- Target
- ARCHIVE_RAW_DATA
- Default
- false|true
Encryption key for raw data archives. Required when ARCHIVE_RAW_DATA is true. Preserve the original key to keep existing archives readable.
- Target
- ARCHIVE_ENCRYPTION_KEY
Photon API host. Useful if you're self-hosting your own Photon instance
- Target
- PHOTON_API_HOST
Requests per second your provider allows. Set it for Geoapify, LocationIQ or the public Nominatim. photon.komoot.io is always limited to 1.
- Target
- REVERSE_GEOCODING_RPS
Reverse-geocoding threads across all workers. No limit when no rate is set. See Background jobs.
- Target
- REVERSE_GEOCODING_CONCURRENCY
Photon API key. Useful if you're supporting Dawarich development on Patreon and want to use Photon API instance hosted by Freika without any limits
- Target
- PHOTON_API_KEY
Use HTTPS for Photon API requests. Set to true if you're using your own Photon instance behind a reverse proxy with SSL
- Target
- PHOTON_API_USE_HTTPS
- Default
- false|true
Language Dawarich asks Photon for place names in: a two-letter code such as nl, or default for names in the local language. Your Photon index must include it. Can also be set under Admin → Instance settings. See Photon index languages
- Target
- PHOTON_API_LANGUAGE
- Default
- en
Geoapify API key. Provide your own key if you want to use Geoapify reverse geocoding service
- Target
- GEOAPIFY_API_KEY
Nominatim API host. Useful if you're self-hosting your own Nominatim instance
- Target
- NOMINATIM_API_HOST
Nominatim API key. Provide your own key if you want to use Nominatim reverse geocoding service
- Target
- NOMINATIM_API_KEY
Use HTTPS for Nominatim API requests. Set to true if you're using a Nominatim instance behind a reverse proxy with SSL
- Target
- NOMINATIM_API_USE_HTTPS
- Default
- true|false
Set to true if you want to store geodata in the database. This will increase the size of the database and will require more disk space.
- Target
- STORE_GEODATA
- Default
- true|false
Enable Prometheus metrics exporter
- Target
- PROMETHEUS_EXPORTER_ENABLED
- Default
- false|true
HTTP basic auth username Prometheus uses to scrape /metrics. Required.
- Target
- METRICS_USERNAME
HTTP basic auth password. Required.
- Target
- METRICS_PASSWORD
Primary key for encrypting OTP secrets. Set explicitly to enable two-factor authentication.
- Target
- OTP_ENCRYPTION_PRIMARY_KEY
Deterministic key for OTP encryption. Set explicitly to enable two-factor authentication.
- Target
- OTP_ENCRYPTION_DETERMINISTIC_KEY
Salt for OTP key derivation. Set explicitly to enable two-factor authentication.
- Target
- OTP_ENCRYPTION_KEY_DERIVATION_SALT
OIDC client secret from your identity provider
- Target
- OIDC_CLIENT_SECRET
OIDC issuer URL (enables auto-discovery)
- Target
- OIDC_ISSUER
Callback URL. Defaults to {APPLICATION_URL}/users/auth/openid_connect/callback
- Target
- OIDC_REDIRECT_URI
Custom display name for the OIDC login button
- Target
- OIDC_PROVIDER_NAME
- Default
- Openid Connect
Automatically create accounts for new OIDC users
- Target
- OIDC_AUTO_REGISTER
- Default
- true|false
Enable PKCE (S256) for the authorization code flow. Required when your OIDC client enforces PKCE (e.g. Pocket ID, hardened Authentik/Keycloak)
- Target
- OIDC_PKCE_ENABLED
- Default
- false|true
Allow traditional email/password registration alongside OIDC
- Target
- ALLOW_EMAIL_PASSWORD_REGISTRATION
- Default
- false|true
Hostname of your identity provider
- Target
- OIDC_HOST
Protocol (https or http)
- Target
- OIDC_SCHEME
- Default
- https|http
Port number
- Target
- OIDC_PORT
- Default
- 443
Authorization endpoint path
- Target
- OIDC_AUTHORIZATION_ENDPOINT
- Default
- /authorize
Token endpoint path
- Target
- OIDC_TOKEN_ENDPOINT
- Default
- /token
User info endpoint path
- Target
- OIDC_USERINFO_ENDPOINT
- Default
- /userinfo
Your SMTP server hostname
- Target
- SMTP_SERVER
Your SMTP port (typically 587 for TLS)
- Target
- SMTP_PORT
HELO/EHLO domain. For transactional relays (Brevo, Mailgun, SendGrid, Postmark, Resend), set this to your verified sender domain - typically the part after @ in SMTP_FROM.
- Target
- SMTP_DOMAIN
Your SMTP username
- Target
- SMTP_USERNAME
Your SMTP password
- Target
- SMTP_PASSWORD
Email address to send emails from
- Target
- SMTP_FROM
Auth mechanism. Common values: plain, login (Office 365 / Microsoft 365 requires this), and cram_md5. Use none for an unauthenticated relay. digest_md5, gssapi, ntlm, and xoauth2 are also accepted but rarely useful.
- Target
- SMTP_AUTHENTICATION
- Default
- plain|login|cram_md5|none|digest_md5|gssapi|ntlm|xoauth2
Opportunistic TLS upgrade on port 587. Leave true for internet-facing relays. Set false only for plain SMTP on port 25 to a trusted local relay. No effect on port 465 (SMTPS / implicit TLS).
- Target
- SMTP_STARTTLS
- Default
- true|false
Seconds to wait for the TCP connection. Bump to 25 for slow providers.
- Target
- SMTP_OPEN_TIMEOUT
- Default
- 5
Seconds to wait for an SMTP response. Bump to 25 for slow providers.
- Target
- SMTP_READ_TIMEOUT
- Default
- 5