2.9 KiB
docker-compose.override.yml
The docker-compose.override.yml
is the configuration
file where you can override existing settings from
docker-compose.yml
or even add completely new services.
By default, this file does not exist and you must create it. You can
either copy the existing
docker-compose.override.yml-example
or create a new
one.
Table of Contents
- local
How does docker-compose.override.yml work?
When you run docker-compose up
, it searches for a file
named docker-compose.yml
and reads all configured services,
networks, volumes etc to create your Docker stack. If you also
additionally have a file named docker-compose.override.yml
this will be read as well and used as an override file to complement. It
works in the following order:
- All definitions from
docker-compose.yml
will be used - All definitions that are also defined in
docker-compose.override.yml
will automatically overwrite the settings fromdocker-compose.yml
- All definitions only available in
docker-compose.override.yml
will be added additionally.
For starting up your Docker Compose stack there are no additional steps or command line arguments required. If both files exist, they will be read automatically.
Create docker-compose.override.yml
Copy example file
host> cd path/to/devilbox
host> cp docker-compose.override.yml-example docker-compose.override.yml
Create new file from scratch
- Create an empty file within the Devilbox git directory named
docker-compose.override.yml
- Retrieve the currently used version from the existing
docker-compose.yml
file - Copy this version line to your newly created
docker-compose.override.yml
at the very top
# Create an empty file
host> cd path/to/devilbox
host> touch docker-compose.override.yml
# Retrieve the current version
host> grep ^version docker-compose.yml
version: '2.1'
# Add this version line to docker-compose.override.yml
host> echo "version: '2.1'" > docker-compose.override.yml
Let's see again how this file should look like now:
version: '2.1'
Note
The documentation might be outdated and the version number might
already be higher. Rely on the output of the grep
command.
Further reading
To dive deeper into this topic and see how to actually add new services or overwrite existing services follow the below listed links:
* add_your_own_docker_image
* overwrite_existing_docker_image