Projektový soubor .env Compose poskytuje hodnoty pro interpolaci. Chcete-li některou z těchto hodnot předat kontejneru, odkažte se na ni v konfiguraci služby.

Například .env obsahuje proxy koncový bod:

HTTP_PROXY=http://203.0.113.10:8080

Služba jej používá pro požadavky na cíle HTTP i HTTPS:

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

Nahraďte dokumentační adresu a image; vyberte kompatibilní koncový bod HTTP ze své služby nebo ze seznamu HTTP proxy. Běžná HTTP proxy může přenášet HTTPS přes CONNECT, pokud podporuje požadovaný tunel.

Explicitní env_file je další způsob, jak předat proměnné zvoleného souboru službě. Interpolační soubor projektu nefunguje jako implicitní env_file kontejneru.

Kontrola, co se dostalo do aplikace

docker compose config zobrazuje vyřešenou konfiguraci služby. docker compose config --environment místo toho zobrazuje hodnoty použité pro interpolaci.

Porovnejte prostředí služby s procesem aplikace. Existující kontejner nedostane nové hodnoty, když upravíte .env; změnu aplikujte zamýšleným životním cyklem Compose a počítejte s přerušením služby.

Pokud proměnná chybí, opravte konfiguraci služby. Pokud je přítomna, ale požadavky zůstávají přímé, zkontrolujte podporu proxy v HTTP klientovi. Vložení prostředí dodá konfiguraci; aplikace ji musí použít.

Související články