Wednesday, 21 February 2024

docker-compose extend port wont override

 https://stackoverflow.com/questions/48851190/docker-compose-override-a-ports-property-instead-of-merging-it


This behaviour is documented at https://docs.docker.com/compose/extends/#adding-and-overriding-configuration

For the multi-value options portsexposeexternal_linksdnsdns_search, and tmpfs, Compose concatenates both sets of values

Since the ports will be the concatenation of the ports in all your compose files, I would suggest creating a new docker-compose.dev.yml file which contains your development port mappings, removing them from the base docker-compose.yml file.




soln:


Just keep the docker-compose.yml super simple and add the ports in another file docker-compose.develop.yml, then run it like docker-compose -f docker-compose.yml -f docker-compose.develop.yml up. This way you can separate it from your docker-compose.override.yml file.

So you will have three files:

|- docker-compose.yml # no ports specified
|- docker-compose.override.yml # ports 8080:8080
|- docker-compose.develop.yml #ports 80:80

No comments:

Post a Comment