Дополнительный файл в Docker
Дополнительный файл добавляет или заменяет куски описания, не стирая основной. Compose читает цепочку файлов слева направо и собирает один проект. Второй файл перекрывает те же поля первого для того же сервиса.
Основной compose.yaml
задаёт сервис web
и образ alpine:
services:
web:
image: alpine
Файл extra.yaml дописывает
тому же web команду,
которая печатает слово
extra:
services:
web:
command: ["echo", "extra"]
Флаг -f указывает
очередной файл описания.
Его повторяют для каждого
файла в цепочке.
Подъём с двумя файлами
выполнят так:
docker compose -f compose.yaml -f extra.yaml up
В выводе сервиса появится
слово extra, хотя
в основном файле команды
не было.
Оставьте в основном файле сервис api на alpine и добавьте вторым файлом команду, печатающую merge.
Поднимите проект с двумя файлами и зафиксируйте это слово в выводе.