We have several container-specific environment variables, which doesn't relates the behavior of modoh-server.
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 logging to the log file/modoh/log/modoh-server.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 themodoh-servercontainer on the host.DISABLE_OTEL: If explicitly set totrue,--traceand--metricsare disabled in the execute option. (default:false)OTEL_ENDPOINT: Set the gRPC endpoint ofopentelemetry-collector. (default:http://localhost:4317but no collector is contained in themodoh-serverdocker container.)ENABLE_QRLOG: If explicitly set totrue, query-response logging is enabled in themodoh-server. (default:false) The log file will be/modoh/log/qrlog.login the container. Note that the log rotation is set as themodoh-serversystem log.
See ./docker-compose.yml for the detailed configuration of the above environment variables.
At least, the configured config.toml file (or its contained directory) must be mounted:
- case 1: only
config.tomlis directly mounted as/etc/modoh-server.toml. Then, the hot-reload function is disabled due to the limitation of docker. - case 2:
path/to/config_dir/containingconfig.tomlis mounted as/modoh/config. Thenmodoh-servercan tracks changes of the configuration file.
In addition to the configuration file/directory, the list of up-to-date CDN IP addresses should be mounted and set in the config.toml. See ../modoh-server.toml and ./docker-compose.yml.
You may also need to mount the log directory (/modoh/log).