TLDR: Why is latest docker for Windows not shipping with latest docker-compose version
Hello everyone, for my use-case, we need to be able to use a .env
file that loads multiple docker-compose.yml files. To do so, you need a variable=value like the following:
COMPOSE_FILE=docker-compose1.yml:docker-compose2.yml
In the previous example, I’m using a colon as the default separator on Linux & MacOS.
But Windows being always different, it requires those colons to be replaced with semi-colons.
We want our .env
file to be compatible for both Windows AND Linux.
The way to do this is by specifying a character to be used as path separator using like so:
COMPOSE_PATH_SEPARATOR=#
COMPOSE_FILE=docker-compose1.yml#docker-compose2.yml
The issue I faced while testing this is that this new variable was introduced in docker-compose version 1.12.0. The current docker for Windows installer is installing 1.11.2 (which doesn’t have the fix)
My question right now is two-fold:
- Why isn’t docker for Windows using the latest docker-compose (which is now at 1.13.0)
- If I manually installed the new version of docker-compose, why does upgrading docker downgrade my docker-compose file. Shouldn’t there be a mechanism to not install an older version?
Thank you.