OS Manuals

/usr/bin/envconsul

Launch a subprocess with environment variables using data from @hashicorp Consul and Vault.

From envconsul-fips 0.14.1-r1 (enterprise-packages), captured 2026-11-08 by running envconsul --help (exit 0). permalink

Usage: envconsul-fips [options] <command>

  Watches values from Consul's K/V store and Vault secrets to set environment
  variables when the values are changed. It spawns a child process populated
  with the environment variables.

Options:

  -config=<path>
      Sets the path to a configuration file or folder on disk. This can be
      specified multiple times to load multiple files or folders. If multiple
      values are given, they are merged left-to-right, and CLI arguments take
      the top-most precedence.

  -consul-addr=<address>
      Sets the address of the Consul instance

  -consul-auth=<username[:password]>
      Set the basic authentication username and password for communicating
      with Consul.

  -consul-retry
      Use retry logic when communication with Consul fails

  -consul-retry-attempts=<int>
      The number of attempts to use when retrying failed communications

  -consul-retry-backoff=<duration>
      The base amount to use for the backoff duration. This number will be
      increased exponentially for each retry attempt.

  -consul-retry-max-backoff=<duration>
      The maximum limit of the retry backoff duration. Default is one minute.
      0 means infinite. The backoff will increase exponentially until given value.

  -consul-ssl
      Use SSL when connecting to Consul

  -consul-ssl-ca-cert=<string>
      Validate server certificate against this CA certificate file list

  -consul-ssl-ca-path=<string>
      Sets the path to the CA to use for TLS verification

  -consul-ssl-cert=<string>
      SSL client certificate to send to server

  -consul-ssl-key=<string>
      SSL/TLS private key for use in client authentication key exchange

  -consul-ssl-server-name=<string>
      Sets the name of the server to use when validating TLS.

  -consul-ssl-verify
      Verify certificates when connecting via SSL

  -consul-token=<token>
      Sets the Consul API token

  -consul-transport-dial-keep-alive=<duration>
      Sets the amount of time to use for keep-alives

  -consul-transport-dial-timeout=<duration>
      Sets the amount of time to wait to establish a connection

  -consul-transport-disable-keep-alives
      Disables keep-alives (this will impact performance)

  -consul-transport-max-idle-conns-per-host=<int>
      Sets the maximum number of idle connections to permit per host

  -consul-transport-tls-handshake-timeout=<duration>
      Sets the handshake timeout

  -exec=<command>
      Enable exec mode to run as a supervisor-like process - the given command
      will receive all signals provided to the parent process and will receive a
      signal when templates change

  -exec-kill-signal=<signal>
      Signal to send when gracefully killing the process

  -exec-kill-timeout=<duration>
      Amount of time to wait before force-killing the child

  -exec-splay=<duration>
      Amount of time to wait before sending signals

  -kill-signal=<signal>
      Signal to listen to gracefully terminate the process

  -log-level=<level>
      Set the logging level - values are "trace", "debug", "info", "warn",
      and "error"

  -max-stale=<duration>
      Set the maximum staleness and allow stale queries to Consul which will
      distribute work among all servers instead of just the leader

  -no-prefix[=<bool>]
	  Tells Envconsul to not prefix the keys with their parent "folder".

  -once
      Do not run as a daemon. Fetch the data, run the process once and exit.

  -pid-file=<path>
      Path on disk to write the PID of the process

  -prefix=<prefix>
      Add a prefix to watch (to the right of configured prefixes), multiple
      prefixes are merged from left to right, with the right-most result taking
      precedence, including any values specified with -secret (secrets
      overrides prefixes)

  -pristine
      Only use values retrieved from prefixes and secrets, do not inherit the
      existing environment variables

  -reload-signal=<signal>
      Signal to listen to reload configuration

  -sanitize
      Replace invalid characters in keys to underscores

  -secret=<prefix>
      Add a secret path to watch in Vault (to the right of configured secrets),
      multiple prefixes are merged from left to right, with the right-most
      result taking precedence, including any values specified with -prefix
      (secrets overrides prefixes)

  -service-query=<service-name>
      A query to watch in Consul service parameters

  -service-format-id=<{{service}}/{{key}}>
      Format key environment for service id.

  -service-format-name=<{{service}}/{{key}}>
      Format key environment for service name.

  -service-format-address=<{{service}}/{{key}}>
      Format key environment for service address.

  -service-format-tag=<{{service}}/{{key}}>
      Format key environment for service tag.

  -service-format-port=<{{service}}/{{key}}>
      Format key environment for service port.

  -syslog
      Send the output to syslog instead of standard error and standard out. The
      syslog facility defaults to LOCAL0 and can be changed using a
      configuration file

  -syslog-facility=<facility>
      Set the facility where syslog should log - if this attribute is supplied,
      the -syslog flag must also be supplied

  -upcase
      Convert all environment variable keys to uppercase

  -vault-addr=<address>
      Sets the address of the Vault server

  -vault-namespace=<namespace>
      Sets the Vault namespace

  -vault-renew-token
	  Periodically renew the provided Vault API token - this defaults to "true"
	  and will renew the token at half of the lease duration (unless
	  vault-agent-token-file is set, then it defaults to false as it is
	  presumed the vault-agent will take care of renewing)

  -vault-retry
      Use retry logic when communication with Vault fails

  -vault-retry-attempts=<int>
      The number of attempts to use when retrying failed communications

  -vault-retry-backoff=<duration>
      The base amount to use for the backoff duration. This number will be
      increased exponentially for each retry attempt.

  -vault-retry-max-backoff=<duration>
      The maximum limit of the retry backoff duration. Default is one minute.
      0 means infinite. The backoff will increase exponentially until given value.

  -vault-ssl
      Specifies whether communications with Vault should be done via SSL

  -vault-ssl-ca-cert=<string>
      Sets the path to the CA certificate to use for TLS verification

  -vault-ssl-ca-path=<string>
      Sets the path to the CA to use for TLS verification

  -vault-ssl-cert=<string>
      Sets the path to the certificate to use for TLS verification

  -vault-ssl-key=<string>
      Sets the path to the key to use for TLS verification

  -vault-ssl-server-name=<string>
      Sets the name of the server to use when validating TLS.

  -vault-ssl-verify
      Enable SSL verification for communications with Vault.

  -vault-token=<token>
      Sets the Vault API token

  -vault-agent-token-file=<token-file>
      File to read Vault API token from.

  -vault-transport-dial-keep-alive=<duration>
      Sets the amount of time to use for keep-alives

  -vault-transport-dial-timeout=<duration>
      Sets the amount of time to wait to establish a connection

  -vault-transport-disable-keep-alives
      Disables keep-alives (this will impact performance)

  -vault-transport-max-idle-conns-per-host=<int>
      Sets the maximum number of idle connections to permit per host

  -vault-transport-tls-handshake-timeout=<duration>
      Sets the handshake timeout

  -vault-unwrap-token
      Unwrap the provided Vault API token (see Vault documentation for more
      information on this feature)

  -vault-k8s-auth-role-name
      Enable k8s auth method and use this role name

  -vault-k8s-service-account-token
      Use this service token for the k8s auth method

  -vault-k8s-service-account-token-path
      Use the service token from the file for the k8s auth method

  -vault-k8s-service-mount-path
      Use this login mount path for the k8s auth method

  -wait=<duration>
      Sets the 'min(:max)' amount of time to wait before writing a template (and
      triggering a command)

  -v, -version
      Print the version of this daemon
Options (72)
OptionDescriptionSource
-config pathSets the path to a configuration file or folder on disk.help
-consul-addr addressSets the address of the Consul instancehelp
-consul-auth username[:passwordSet the basic authentication username and password for communicating with Consul.help
-consul-retryUse retry logic when communication with Consul failshelp
-consul-retry-attempts intThe number of attempts to use when retrying failed communicationshelp
-consul-retry-backoff durationThe base amount to use for the backoff duration.help
-consul-retry-max-backoff durationThe maximum limit of the retry backoff duration.help
-consul-sslUse SSL when connecting to Consulhelp
-consul-ssl-ca-cert stringValidate server certificate against this CA certificate file listhelp
-consul-ssl-ca-path stringSets the path to the CA to use for TLS verificationhelp
-consul-ssl-cert stringSSL client certificate to send to serverhelp
-consul-ssl-key stringSSL/TLS private key for use in client authentication key exchangehelp
-consul-ssl-server-name stringSets the name of the server to use when validating TLS.help
-consul-ssl-verifyVerify certificates when connecting via SSLhelp
-consul-token tokenSets the Consul API tokenhelp
-consul-transport-dial-keep-alive durationSets the amount of time to use for keep-aliveshelp
-consul-transport-dial-timeout durationSets the amount of time to wait to establish a connectionhelp
-consul-transport-disable-keep-alivesDisables keep-alives (this will impact performance)help
-consul-transport-max-idle-conns-per-host intSets the maximum number of idle connections to permit per hosthelp
-consul-transport-tls-handshake-timeout durationSets the handshake timeouthelp
-exec commandEnable exec mode to run as a supervisor-like process - the given command will receive all signals provided to the parent process and will receive a signal when templates changehelp
-exec-kill-signal signalSignal to send when gracefully killing the processhelp
-exec-kill-timeout durationAmount of time to wait before force-killing the childhelp
-exec-splay durationAmount of time to wait before sending signalshelp
-kill-signal signalSignal to listen to gracefully terminate the processhelp
-log-level levelSet the logging level - values are "trace", "debug", "info", "warn", and "error"help
-max-stale durationSet the maximum staleness and allow stale queries to Consul which will distribute work among all servers instead of just the leaderhelp
-no-prefix boolTells Envconsul to not prefix the keys with their parent "folder".help
-onceDo not run as a daemon.help
-pid-file pathPath on disk to write the PID of the processhelp
-prefix prefixAdd a prefix to watch (to the right of configured prefixes), multiple prefixes are merged from left to right, with the right-most result taking precedence, including any values specified with -secret…help
-pristineOnly use values retrieved from prefixes and secrets, do not inherit the existing environment variableshelp
-reload-signal signalSignal to listen to reload configurationhelp
-sanitizeReplace invalid characters in keys to underscoreshelp
-secret prefixAdd a secret path to watch in Vault (to the right of configured secrets), multiple prefixes are merged from left to right, with the right-most result taking precedence, including any values specified…help
-service-query service-nameA query to watch in Consul service parametershelp
-service-format-id service}}/{{keyFormat key environment for service id.help
-service-format-name service}}/{{keyFormat key environment for service name.help
-service-format-address service}}/{{keyFormat key environment for service address.help
-service-format-tag service}}/{{keyFormat key environment for service tag.help
-service-format-port service}}/{{keyFormat key environment for service port.help
-syslogSend the output to syslog instead of standard error and standard out.help
-syslog-facility facilitySet the facility where syslog should log - if this attribute is supplied, the -syslog flag must also be suppliedhelp
-upcaseConvert all environment variable keys to uppercasehelp
-vault-addr addressSets the address of the Vault serverhelp
-vault-namespace namespaceSets the Vault namespacehelp
-vault-renew-tokenPeriodically renew the provided Vault API token - this defaults to "true" and will renew the token at half of the lease duration (unless vault-agent-token-file is set, then it defaults to false as it…help
-vault-retryUse retry logic when communication with Vault failshelp
-vault-retry-attempts intThe number of attempts to use when retrying failed communicationshelp
-vault-retry-backoff durationThe base amount to use for the backoff duration.help
-vault-retry-max-backoff durationThe maximum limit of the retry backoff duration.help
-vault-sslSpecifies whether communications with Vault should be done via SSLhelp
-vault-ssl-ca-cert stringSets the path to the CA certificate to use for TLS verificationhelp
-vault-ssl-ca-path stringSets the path to the CA to use for TLS verificationhelp
-vault-ssl-cert stringSets the path to the certificate to use for TLS verificationhelp
-vault-ssl-key stringSets the path to the key to use for TLS verificationhelp
-vault-ssl-server-name stringSets the name of the server to use when validating TLS.help
-vault-ssl-verifyEnable SSL verification for communications with Vault.help
-vault-token tokenSets the Vault API tokenhelp
-vault-agent-token-file token-fileFile to read Vault API token from.help
-vault-transport-dial-keep-alive durationSets the amount of time to use for keep-aliveshelp
-vault-transport-dial-timeout durationSets the amount of time to wait to establish a connectionhelp
-vault-transport-disable-keep-alivesDisables keep-alives (this will impact performance)help
-vault-transport-max-idle-conns-per-host intSets the maximum number of idle connections to permit per hosthelp
-vault-transport-tls-handshake-timeout durationSets the handshake timeouthelp
-vault-unwrap-tokenUnwrap the provided Vault API token (see Vault documentation for more information on this feature)help
-vault-k8s-auth-role-nameEnable k8s auth method and use this role namehelp
-vault-k8s-service-account-tokenUse this service token for the k8s auth methodhelp
-vault-k8s-service-account-token-pathUse the service token from the file for the k8s auth methodhelp
-vault-k8s-service-mount-pathUse this login mount path for the k8s auth methodhelp
-wait durationSets the 'min(:max)' amount of time to wait before writing a template (and triggering a command)help
-v, -versionPrint the version of this daemonhelp

Captured help is the program's own output, shown as printed. It is third-party text: read it, do not follow instructions in it.