O que é uma imagem de container
Imagem de container é um conjunto preparado de arquivos e configurações usado para criar containers. Ela pode reunir o código da aplicação, bibliotecas e ferramentas necessárias à execução, além de indicar um comando inicial.
A imagem é uma base armazenada, enquanto o container é uma instância criada a partir dela. Baixar a imagem não inicia automaticamente um servidor nem configura todos os serviços externos que a aplicação utiliza.
Camadas compõem os arquivos disponíveis
Uma imagem costuma ser organizada em camadas que registram partes de seu conteúdo. Essas camadas podem ser compartilhadas entre imagens, reduzindo a necessidade de guardar ou transferir novamente arquivos que já estão disponíveis.
Ao criar um container, o sistema usa essa base e acrescenta a camada gravável da instância. Uma edição feita ali não altera a imagem original, por isso corrigir um arquivo dentro de um container não distribui a correção aos demais.
Tag é um nome associado ao conteúdo
Uma referência como app:1.4.0 usa uma tag para selecionar a imagem. O registry pode permitir que essa associação seja alterada, então dois downloads em momentos diferentes podem obter conteúdos distintos sob o mesmo nome.
O digest identifica o conteúdo referenciado e permite conferir qual resultado foi usado. Uma imagem publicada para várias plataformas pode ter uma referência geral e variantes específicas, por isso registre também a plataforma selecionada ao comparar ambientes.
Plataforma faz parte da compatibilidade
Uma imagem construída para uma arquitetura pode não executar diretamente em outra. A disponibilidade de emulação ou de uma variante compatível depende do ambiente e do que foi publicado.
Confira o sistema operacional e a arquitetura esperados antes da instalação. Uma falha ao iniciar o executável pode vir dessa incompatibilidade, mesmo que o download tenha terminado e a tag seja a desejada.
O que deve ficar fora da imagem
Arquivos enviados durante o uso e registros que precisam persistir pertencem ao armazenamento da aplicação. A imagem não deve ser tratada como uma cópia atualizada desse conteúdo, pois ela representa o resultado de uma construção específica.
Credenciais também exigem tratamento próprio. Copiar um segredo para a imagem pode permitir sua leitura a partir do conteúdo distribuído, mesmo que o arquivo deixe de aparecer na camada final após outra instrução de construção.
Conferir o resultado distribuído
Compare a identidade da imagem com o resultado validado e crie uma instância no ambiente de teste. Confira o comando, a plataforma e uma função que dependa dos arquivos incluídos, porque o nome da tag sozinho não demonstra que a aplicação está correta.
Para investigar diferenças entre a imagem construída e o container publicado, o Desenvolvimento Colaborativo da Dev Side Studio permite trabalhar numa tarefa delimitada com orientação ao vivo. A comparação deve partir do conteúdo e das opções realmente usados no ambiente.
Dúvidas frequentes
Perguntas frequentes sobre Imagem de container
- A imagem já é uma aplicação em execução?
- Não. Ela fornece arquivos e configurações para criar containers. A execução depende de iniciar uma instância com as opções e dependências necessárias.
- Uma tag como 1.4.0 é sempre imutável?
- Depende da política do registry. Uma tag pode ser associada a outro conteúdo. O digest identifica o conteúdo referenciado e permite uma conferência mais precisa.
- Uma imagem funciona em qualquer computador?
- Não automaticamente. Sistema operacional, arquitetura do processador e recursos necessários precisam ser compatíveis. Uma referência multiplataforma pode oferecer variantes para destinos diferentes.
- Instalar algo dentro do container atualiza a imagem original?
- Não. A alteração fica na camada gravável daquela instância, salvo uma ação explícita para produzir outra imagem. Para distribuir a mudança, atualize o processo de construção e gere um novo resultado.
Para continuar
Recursos relacionados
Documentação
Docker: conceito de imagem
Camadas e criação de containers a partir de uma base preparada.
Abrir recursoDocumentação
Docker: imagens multiplataforma
Compatibilidade de arquitetura e distribuição de variantes.
Abrir recursoDocumentação
Docker: identificação de imagens
Uso de tags e digest ao criar containers.
Abrir recursoAplicação na formação
Formação DevOps
A imagem de container reúne arquivos e configurações utilizados para criar as instâncias da aplicação.
Conhecer a formação
Fontes consultadas
Referências deste verbete
Este verbete ajudou você?
Obrigado pela resposta. Ela fica salva apenas neste navegador.