O arquivo .env do projeto Compose fornece valores de interpolação. Para entregar um desses valores a um contêiner, faça referência a ele na configuração do serviço.

Por exemplo, .env contém o endpoint do proxy:

HTTP_PROXY=http://203.0.113.10:8080

O serviço o usa tanto para solicitações de destino HTTP quanto HTTPS:

services:
  app:
    image: your-image
    environment:
      HTTP_PROXY: "${HTTP_PROXY}"
      HTTPS_PROXY: "${HTTP_PROXY}"

Substitua o endereço de documentação e a imagem; escolha um endpoint HTTP compatível do seu serviço ou da lista de proxies HTTP. Um proxy HTTP comum pode transportar HTTPS via CONNECT se oferecer suporte ao túnel solicitado.

Uma entrada explícita de env_file é outra forma de passar as variáveis de um arquivo escolhido a um serviço. O arquivo de interpolação do projeto não funciona como um env_file implícito do contêiner.

Verificar o que chegou à aplicação

docker compose config mostra a configuração resolvida do serviço. Já docker compose config --environment mostra os valores usados na interpolação.

Compare o ambiente do serviço com o processo da aplicação. Um contêiner existente não recebe novos valores quando você edita .env; aplique a alteração pelo ciclo de vida pretendido do Compose, considerando a possibilidade de interrupção do serviço.

Se a variável estiver ausente, corrija a configuração do serviço. Se estiver presente mas as solicitações continuarem diretas, verifique o suporte a proxy do cliente HTTP. A injeção pelo ambiente fornece configuração; a aplicação precisa usá-la.

Artigos relacionados