Compose: propriedades especificadas pelo usuário e / ou onde armazenar metadados (autor, descrição)

Criado em 17 fev. 2016  ·  3Comentários  ·  Fonte: docker/compose

Com os arquivos da versão 1, tenho dois comentários no início do arquivo docker-compose:

# author: Anthon van der Neut <[email protected]>
# description: mongo container

que eu extraio dc2service usando ruamel.yaml e incluo essas informações no arquivo de serviço para Systemd / Upstart. Claro que eu poderia seguir o princípio YACF (Yet Another Configuration File) tão freqüentemente visto em projetos Python, mas com o formato de arquivo 1.6.0 e versão 2.0 eu poderia facilmente fazer:

version: '2'
user-data:
  author: Anthon van der Neut <[email protected]>
  description: mongo container
services:
   .......

Infelizmente docker-compose reclama sobre user-data ser uma propriedade adicional inesperada.

Para o mapeamento de nível superior na versão 2, proponho que obtenhamos uma ou mais chaves reservadas para dados específicos do usuário, com o único requisito de que o valor correspondente seja uma construção YAML válida, ou seja, todo o arquivo permanece YAML analisável. Pode ser uma chave, com a recomendação de que seu valor correspondente é um mapeamento (para flexibilidade) ou, alternativamente, docker-compose pode ignorar todas as chaves de nível superior que possuem um determinado prefixo ("user-data-")

Algo semelhante é feito, por exemplo, em formatos de arquivo de contêiner como TIFF para permitir a inclusão de informações adicionais (específicas do fornecedor). O nome dessa chave deve ser algo que certamente não será usado em docker-compose, portanto, "user-data", "non-dc-data".

Os desenvolvedores docker-compose podem sempre escolher as informações que consideram úteis para outros projetos (como meu autor / descrição) e decidir que sejam inseridas em alguma outra propriedade, ou talvez até mesmo garantam sua própria propriedade de nível superior.

Comentários muito úteis

Fechei alguns outros problemas como duplicatas deste.

Acho que devemos permitir x-* chaves no nível superior na próxima versão dos esquemas 2.xe 3.x

Todos 3 comentários

Acho que isso se sobrepõe aos # 1655 e # 2578

Isso seria excepcionalmente útil para ferramentas que funcionam com docker-compose.yml arquivos.

Fechei alguns outros problemas como duplicatas deste.

Acho que devemos permitir x-* chaves no nível superior na próxima versão dos esquemas 2.xe 3.x

Esta página foi útil?
0 / 5 - 0 avaliações