organização Dockerfiles

1

Muitos posts estão disponíveis na Internet e mostram como escrever / otimizar / usar um Dockerfile, mas eu não encontrei muito sobre como organizá-los.

No entanto, meu caso de uso não parece exótico: eu tenho uma hierarquia Dockerfiles, composta de base-Dockerfiles e muitos Dockerfiles-filho, todos eles destinados a serem usados para construir imagens armazenadas em um registro empresarial.

À primeira vista, colocá-los em um SCM (como o Git) parece uma boa ideia. Mas um Dockerfile raramente vem sozinho. Na maioria das vezes, há arquivos de configuração extras (um SCM ainda se encaixa perfeitamente) e possivelmente binários (não se ajusta mais).

Outra opção seria armazenar todos os Dockerfiles / arquivos de configuração / binários em uma máquina host (por que não aquela que executa o registro privado?) e fazer backups agendados.

Alguém tem algum comentário sobre este tópico? Obrigado!

    
por tduchateau 03.12.2014 / 09:03

1 resposta

2

Eu definitivamente armazenar os arquivos do Docker e a configuração de texto dentro de um SCM (por exemplo, git). É para isso que eles são feitos (Source and Configuration Management)!

Para os binários, vi atualmente duas abordagens "em estado natural":

  • wget <url> dentro do Dockerfile :

  • Usando um script de shell para copiar os artefatos relevantes para o diretório de compilação do Docker. Os scripts de shell invocam docker build dentro desse diretório para realmente construir a imagem.

Outras coisas possíveis são docker import (veja também Criando uma imagem de base ) e docker commit , mas provavelmente não serão relevantes durante o uso no dia a dia.

    
por 03.12.2014 / 14:19

Tags