We have several docker-specific environment variables, which doesn't relates the behavior of doh-auth-proxy.
HOST_USER(default:user): User name executingrpxyinside the container.HOST_UID(default:900):UIDofHOST_USER.HOST_GID(default:900):GIDofHOST_USERLOG_LEVEL=debug|info|warn|error(default:info): Log levelLOG_TO_FILE=true|false(default:false): Enable system logging to the log file/modoh/log/doh-auth-proxy.logusinglogrotate. You should mount/modoh/logvia docker volume option if enabled. The log dir and file will be owned by theHOST_USERwithHOST_UID:HOST_GIDon the host machine. Hence,HOST_USER,HOST_UIDandHOST_GIDshould be the same as ones of the user who executes thedoh-auth-proxydocker container on the host.ENABLE_QUERY_LOG=true|false(default:false): Query log is enabled if true. Record in/modoh/log/query.logENABLE_JSON_QUERY_LOG=true|false(default:false): Query log in json is enabled if true. This is prioritized overENABLE_QUERY_LOG. Record in/modoh/log/query.logas well.
See docker/docker-compose.yml for the detailed configuration of the above env vars.
Other than them, we have the following environment variables as doh-auth-proxy specific parameters. In docker-compose.yml, they are configured through .env file. (See .env.example.)
## All values are optional
## Common to DoH and ODoH
# TARGET_URLS=https://dns.google/dns-query
TARGET_URLS=https://odoh.cloudflare-dns.com/dns-query
TARGET_RANDOMIZATION=true
BOOTSTRAP_DNS=1.1.1.1
# URL-like specification is also supported.
# BOOTSTRAP_DNS=tcp://1.1.1.1:53
## ODoH
## If specified, ODoH is enabled.
ODOH_RELAY_URLS=https://odoh1.surfdomeinen.nl/proxy
ODOH_RELAY_RANDOMIZATION=true
## Mutualized ODoH
## If specified, ODoH queries are transferred over multiple hops,
## where the first hop (nexthop) is always ODOH_RELAY_URL as a trusted relay.
## ODOH_RELAY_URL must be specified.
# MODOH_MID_RELAY_URLS=https://relay1.example.com/proxy,https://relay2.example.com/proxy
# MODOH_MAX_MID_RELAYS=2
## Authentication at the nexthop
## If specified, authentication is enabled at
## - DoH: Target DoH server, i.e., TARGET_URL.
## - ODoH/Mutualized ODoH: Nexthop relay url, i.e., ODOH_RELAY_URL.
# TOKEN_API=https://xxx.token.com/v1.0 # i.e., token issuer
# USERNAME=user
# PASSWORD=password
# CLIENT_ID=xxxxxxx # i.e., app_id
## Plugins
## Place below files in your plugin directory mapped to /modoh/plugins inside the docker container
# DOMAINS_BLOCKED_FILE="blocklist.txt"
# DOMAINS_OVERRIDDEN_FILE="override.txt"and execute docker-compose as
% docker-compose up -dBy this example, it listens at the port 50553 by default, outputs a log file to ./log directory mapped to /modoh/log, the plugins directory on your host must be mapped to /modoh/plugins of the container. You should configure params in docker-compose.yml as you like in addition to .env.