Compose-prosjektet si .env-fil leverer interpolasjonsverdiar. For å gje ein av desse verdiane til ein container, viser du til han i tenestekonfigurasjonen.

Til dømes inneheld .env proxy-endepunktet:

HTTP_PROXY=http://203.0.113.10:8080

Tenesta brukar det både for HTTP- og HTTPS-førespurnader:

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

Byt ut dokumentasjonsadressa og imaget; vel eit kompatibelt HTTP-endepunkt frå tenesta di eller frå HTTP-proxylista. Ein vanleg HTTP-proxy kan føre HTTPS gjennom CONNECT dersom han støttar tunnelen som blir bede om.

Ei eksplisitt env_file-oppføring er ein annan måte å sende variablane i ei vald fil til ei teneste. Interpolasjonsfila i prosjektet verkar ikkje som ei implisitt env_file for containeren.

Kontrollere kva som nådde applikasjonen

docker compose config viser den løyste tenestekonfigurasjonen. docker compose config --environment viser i staden verdiane som vart brukte til interpolasjon.

Samanlikn tenestemiljøet med applikasjonsprosessen. Ein eksisterande container får ikkje nye verdiar når du endrar .env; bruk endringa gjennom den tiltenkte Compose-livssyklusen, og rekn med avbrot i tenesta.

Dersom variabelen manglar, rett tenestekonfigurasjonen. Dersom han finst, men førespurnadene framleis går direkte, kontroller proxy-støtta i HTTP-klienten. Miljøinjeksjon gir konfigurasjon; applikasjonen må bruke han.

Relaterte artiklar