С файлами версии 1 у меня есть два комментария в начале файла docker-compose:
# author: Anthon van der Neut <[email protected]>
# description: mongo container
которые я затем извлекаю в dc2service
с помощью ruamel.yaml
и включаю эту информацию в служебный файл для Systemd / Upstart. Конечно, я мог бы следовать принципу YACF (еще один файл конфигурации), который так часто встречается в проектах Python, но с 1.6.0 и форматом файла версии 2.0 я мог легко сделать:
version: '2'
user-data:
author: Anthon van der Neut <[email protected]>
description: mongo container
services:
.......
К сожалению, docker-compose
жалуется на то, что user-data
является неожиданным дополнительным свойством.
Для отображения верхнего уровня в версии 2 я предлагаю получить один или несколько ключей, зарезервированных для пользовательских данных, с единственным требованием, чтобы соответствующее значение было допустимой конструкцией YAML, т.е. весь файл оставался анализируемым YAML. Это может быть один ключ с рекомендацией, что его соответствующее значение является сопоставлением (для гибкости), или же docker-compose может игнорировать все ключи верхнего уровня с определенным префиксом ("user-data-")
Нечто подобное делается, например, в форматах файлов-контейнеров, таких как TIFF, чтобы разрешить включение дополнительной (специфической для производителя) информации. Имя этого ключа, конечно, должно быть чем-то, что определенно не будет использоваться в docker-compose, так что «пользовательские данные», «не-данные постоянного тока».
Разработчики docker-compose всегда могут выбрать информацию, которую они считают полезной для других проектов (надеюсь, как мой автор / описание), и решить, что они будут вставлены в какое-то другое свойство, или, возможно, даже гарантировать их собственное свойство верхнего уровня.
Я думаю, что это частично совпадает с # 1655 и # 2578.
Это было бы исключительно полезно для инструментов, которые работают с файлами docker-compose.yml
.
Я закрыл несколько других выпусков как дубликаты этого.
Я думаю, мы должны разрешить ключи x-*
на верхнем уровне в следующей версии схем 2.x и 3.x.
Самый полезный комментарий
Я закрыл несколько других выпусков как дубликаты этого.
Я думаю, мы должны разрешить ключи
x-*
на верхнем уровне в следующей версии схем 2.x и 3.x.