Containers e variáveis de ambiente
No Docker, você pode definir variáveis de ambiente para contêineres, permitindo que você passe configurações e parâmetros para a aplicação em execução dentro do contêiner. Essas variáveis podem ser definidas de várias maneiras, dependendo de como você está criando ou iniciando o contêiner.
Definindo Variáveis de Ambiente na Linha de Comando
A maneira mais comum de definir variáveis de ambiente ao iniciar um contêiner é usando a opção -e ou --env.
Exemplo:
docker container run -e "VAR1=valor1" -e "VAR2=valor2" ubuntu envNeste exemplo:
-e "VAR1=valor1": Define a variável de ambienteVAR1com o valorvalor1.-e "VAR2=valor2": Define a variável de ambienteVAR2com o valorvalor2.ubuntu env: Inicia um contêiner com a imagemubuntue executa o comandoenvpara listar todas as variáveis de ambiente dentro do contêiner.
Usando um Arquivo .env
.envSe você tiver muitas variáveis de ambiente para definir, pode ser mais prático usar um arquivo .env. Este arquivo contém as variáveis de ambiente em formato chave=valor.
Exemplo de Arquivo .env:
VAR1=valor1
VAR2=valor2Comando para Usar o Arquivo .env:
docker container run --env-file ./minhas_variaveis.env ubuntu envAqui:
--env-file ./minhas_variaveis.env: Carrega as variáveis de ambiente do arquivominhas_variaveis.env.
Definindo Variáveis de Ambiente no Dockerfile
DockerfileVocê também pode definir variáveis de ambiente diretamente no Dockerfile usando a instrução ENV. Isso é útil para criar imagens Docker que já têm certas variáveis de ambiente configuradas.
Exemplo de Dockerfile:
Neste exemplo:
ENV VAR1=valor1: Define a variávelVAR1dentro do contêiner.ENV VAR2=valor2: Define a variávelVAR2dentro do contêiner.
Acessando Variáveis de Ambiente em um Contêiner
Dentro de um contêiner, você pode acessar as variáveis de ambiente como faria normalmente em um sistema operacional, utilizando comandos como echo ou acessando-as diretamente em scripts ou programas.
Exemplo:
Usos Comuns
Configuração de Aplicativos: Muitas vezes, variáveis de ambiente são usadas para passar configurações como credenciais de banco de dados, URLs de serviços externos, e outros parâmetros de configuração.
Chaves Secretas: Variáveis de ambiente são uma prática comum para armazenar chaves de API e outros dados sensíveis, embora seja importante tomar precauções para evitar que esses dados sejam expostos.
Laboratório
As variáveis de ambiente servem para configurar os containeres.
Exemplo com banco de dados MySQL
Execução do container MySQL na porta 3306:
O container não está em execução. Status: Exited (1)
Visualizar os logs do container:
Faz-se necessário especificar as variáveis de ambiente para configurar o container. No Docker Registry (Hub) é possível consultar as variáveis de ambiente possíveis à configuração do container:

Criação do container com as variáveis de ambiente:
Acessar o banco de dados com o DBeaver:




Parar e remover o container:
Lembrar que o conteiner é efêmero e que os dados serão perdidos ao remove-lo.
Last updated