haproxy -vv: Inspect Build and Features
haproxy -vv prints the full version banner plus the compiled-in features, so you can verify a directive is supported before you use it.
When haproxy -c rejects a keyword, -vv tells you whether the feature is even compiled in. It is the quickest way to explain a version-specific config failure.
What it does
haproxy -vv prints the version, the build date and compiler, the default and built options, the list of usable pollers, and the enabled features (for example +OPENSSL, +PROMEX, +QUIC). This tells you whether a directive that -c rejected is missing because the binary lacks that feature.
Common usage
haproxy -vv
# just the version line
haproxy -v
# confirm a feature is present
haproxy -vv | grep -i opensslOptions
| Flag | What it does |
|---|---|
| -vv | Print version, build options, and features |
| -v | Print the short version line only |
| -c -f <file> | Combine with a config check to explain a rejected keyword |
In CI
Log haproxy -vv early in the job so a failing config check has the build context beside it. Grep the feature list (haproxy -vv | grep -qi openssl) to assert TLS support before relying on ssl directives. Pin the image version so the feature set is stable across runs.
Common errors in CI
If a config uses a keyword that -c rejects and -vv shows the related feature as -FEATURE (for example -OPENSSL), the binary was built without it; switch to a full-featured image. "haproxy: command not found" means the binary is not installed. A version far older than expected usually means a distro package rather than the official image.