Docker Tip #43: Using the Docker Compose Config Command
Docker Compose supports ENV variable substitution and overriding YML files. The config command lets you see the true values being run.
If you run docker-compose config
, 2 really useful things will happen. First,
your YML file will get a syntax check and secondly, Compose is going to resolve
a “final” YML file which is the single source of truth of what actually gets run
in the end.
That means, Compose will substitute any ENV variables that you’re using and load
in ENV variables from env_files
while placing them in environment
. It also
expands your volume paths to absolute paths and does a few other minor things.
So if you ever have something unexpected happen, such as a volume not working,
or an environment variable being overwritten in an unexpected way then running
docker-compose config
is your goto tool to troubleshoot that.
Also, if you’re using override files or secondary files, you can pass them in
with the -f
flag as you would normally do. The config command will account for
all of them. Nice!