#8837·dokku

config: support atomically replacing an app's entire environment

Author: josegonzalezCreated Jul 14, 2026Updated Jul 18, 2026
Labelsmerge-level: minorstatus: has planplugin: config

Dokku can atomically replace an app's entire vhost list with domains:set (and clear it with domains:clear), but there is no equivalent for config. To make an app's environment exactly match a desired set today you have to read the current config with config:export, diff it yourself, and then issue separate config:set and config:unset commands for the additions/changes and the removals.

It would be useful to rewrite all of an app's environment variables in one operation - for example a config:set --replace <app> KEY=VALUE ... that unsets any existing keys not provided, or a config:import mode that overwrites rather than merges. This would make "replace all config" a single atomic change with one rebuild, mirroring domains:set.

Use case: tools that manage an app's config declaratively (dashboards, GitOps-style sync) currently reimplement the fetch-diff-apply loop; a native replace would remove that boilerplate and the read-then-write race.