Fundamentos de Variáveis de Ambiente Docker
O que são Variáveis de Ambiente Docker?
Variáveis de ambiente Docker são valores dinâmicos que podem ser usados para configurar containers e modificar o comportamento das aplicações sem alterar o código. Elas fornecem uma forma flexível de passar configurações entre o sistema host e os containers Docker.
Tipos de Variáveis de Ambiente
1. Variáveis de Ambiente Estáticas
Variáveis de ambiente estáticas são pré-definidas e configuradas diretamente no Dockerfile ou no arquivo docker-compose.
FROM ubuntu:22.04
ENV APP_VERSION=1.0
ENV DATABASE_HOST=localhost
2. Variáveis de Ambiente em Tempo de Execução
Variáveis de ambiente em tempo de execução são passadas ao iniciar um container usando a flag -e ou --env.
docker run -e DATABASE_PASSWORD=secret myapp
Escopos de Variáveis de Ambiente
graph TD
A[Escopos de Variáveis de Ambiente Docker] --> B[Nível de Container]
A --> C[Nível de Serviço]
A --> D[Nível Global]
| Escopo |
Descrição |
Exemplo |
| Nível de Container |
Variáveis específicas para um único container |
docker run -e DEBUG=true |
| Nível de Serviço |
Variáveis aplicadas a um serviço específico em docker-compose |
Definição de serviço em docker-compose |
| Nível Global |
Variáveis definidas no sistema host |
Variáveis de ambiente de sistema global |
Boas Práticas
- Utilize variáveis de ambiente para informações confidenciais
- Evite codificar valores de configuração
- Utilize arquivos
.env para gerenciar várias variáveis de ambiente
- Utilize segredos Docker para dados confidenciais
Exemplo: Implementação Prática
## Crie um arquivo .env
echo "DATABASE_URL=postgresql://user:password@localhost/mydb" > .env
## Utilize variáveis de ambiente em docker-compose
docker-compose --env-file .env up
Dica LabEx
Ao aprender sobre variáveis de ambiente Docker, o LabEx fornece ambientes interativos para praticar e experimentar diferentes cenários de configuração.