Compose: env_file interpolando vars de .env e shell da mesma forma que o ambiente faz

Criado em 11 set. 2016  ·  3Comentários  ·  Fonte: docker/compose

Eu tenho algumas variáveis ​​de configuração definidas no arquivo ".env".
Então, se eu puder usá-los assim no meu arquivo yml de composição:

  environment:
   - VAR=${VAL_FROM_ENV}
  env_file:
    - etc/environment.yml

Por que não posso usar isso no meu ambiente.yml?

DEMO_VAR='${VAL_FROM_ENV}'

Eu vejo env_file como extensão do campo de ambiente em um arquivo , e faz todo o sentido também aderir à substituição do shell vars.

Faz sentido para mim que o arquivo .env seja para Compose e environment/env_file para docker-containers.
Também faz todo o sentido para mim que as vars do terminal env substituam as do .env.

Acho muito legal poder ter vários arquivos env.yml ou apenas um e reutilizá-lo. Fazer com que funcione da mesma forma que um campo de ambiente vars tornaria toda a composição drasticamente mais dinâmica e interconectada (e você não está passando tudo em todos os lugares). E eu não teria que redigitar tudo em muitos lugares diferentes.

Background - Estou orquestrando o ambiente de desenvolvimento no mac com docker machine/compose (anteriormente com vagrant) e tenho procurado uma maneira de manter todas as configurações importantes por aplicativo em um arquivo (onde o aplicativo é executado em alguma pilha definida no arquivo de composição), que O IMHO facilita a vida ao lidar com muitos projetos/desenvolvedores. Além disso, eu realmente não gosto de codificar dados confidenciais em diferentes arquivos de configuração.

Eu tenho acompanhado a discussão em # 3435 (Interpolate Variables set by environment ou env_file) e, embora eu queira tanto, não acho que compose yml file seja um bom lugar para definir vars para ser usado em outro lugar (em compose/docker filees? ) porque isso levaria a uma mistura de vars completamente ilegível (quem está configurando ou lendo de onde?).

Obrigada. :)

versão docker-compose
docker-compose versão 1.8.0, compilação desconhecida
versão docker-py: 1.9.0
Versão do CPython: 2.7.10
Versão do OpenSSL: OpenSSL 0.9.8zh 14 de janeiro de 2016

stale

Comentários muito úteis

Implementação realmente inconsistente sem ter essa parte funcionando.

Todos 3 comentários

Implementação realmente inconsistente sem ter essa parte funcionando.

Este problema foi marcado automaticamente como obsoleto porque não teve atividade recente. Será fechado se não ocorrer mais nenhuma atividade. Obrigado por suas contribuições.

Este problema foi encerrado automaticamente porque não teve atividade recente durante o período obsoleto.

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