Předání proxy proměnné Compose do kontejneru
Udělejte z proxy proměnných součást prostředí služby Compose, místo abyste předpokládali, že je soubor .env projektu vloží automaticky.
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.