Skip to contentAboutThe people and vision powering ProboBlogThe latest news from ProboStoriesHear from our customersChangelogLatest product updatesDocsDocumentation for ProboGitHubExplore our open-source compliance tools

Configuration Overview

The probod daemon natively supports YAML configuration files for comprehensive control over all settings. To make deployment easier in cloud-native environments, Docker containers include an entrypoint script that can automatically generate YAML configuration from environment variables.

Probo supports two configuration methods depending on your deployment scenario:

  • Config File — YAML configuration files read directly by probod. This is the native configuration method and supports all settings. Use this when running probod directly on a host or when you need fine-grained control.
  • Environment Variables — A Docker-specific convenience layer. The container’s entrypoint script translates environment variables into a YAML config file at startup. Use this for Docker Compose, Kubernetes, or other container orchestrators where environment variables are the natural configuration mechanism.
  1. Direct probod usage: Pass a YAML file with the -cfg-file flag. No config is loaded by default — you must always specify the file explicitly.

    Terminal window
    probod -cfg-file /path/to/config.yaml
  2. Docker containers: The entrypoint script checks for a config file at /etc/probod/config.yml. If one exists (e.g., mounted as a volume), it is used as-is. If not, the script generates one from environment variables.

  3. Precedence: When running in Docker, a mounted config file always takes priority over environment variables. If both are present, the file wins and environment variables are ignored.

Scenario Recommended Method
Docker Compose (development) Environment variables
Docker Compose (production) Config file (mounted as volume)
Kubernetes Environment variables or config file via ConfigMap/Secret
Direct host deployment Config file