Compose-ի պրոքսի փոփոխականը կոնտեյներ փոխանցելը
Պրոքսի փոփոխականները դարձրեք Compose ծառայության միջավայրի մաս՝ փոխարենը չենթադրելով, որ նախագծի .env ֆայլը դրանք ներարկում է ինքնաշխատ։
Compose-ի նախագծի .env ֆայլը տալիս է ինտերպոլացիայի արժեքներ։ Այդ արժեքներից մեկը կոնտեյներին տալու համար հղում արեք դրան ծառայության կոնֆիգուրացիայում։
Օրինակ՝ .env պարունակում է պրոքսի վերջնակետը՝
HTTP_PROXY=http://203.0.113.10:8080
Ծառայությունն այն օգտագործում է և՛ HTTP, և՛ HTTPS նպատակակետերի հարցումների համար՝
services:
app:
image: your-image
environment:
HTTP_PROXY: "${HTTP_PROXY}"
HTTPS_PROXY: "${HTTP_PROXY}"
Փոխարինեք փաստաթղթային հասցեն և image-ը. ընտրեք համատեղելի HTTP վերջնակետ ձեր ծառայությունից կամ HTTP պրոքսիների ցանկից։ Սովորական HTTP պրոքսին կարող է HTTPS փոխանցել CONNECT-ի միջոցով, եթե այն աջակցում է պահանջվող թունելին։
Բացահայտ env_file մուտքը ընտրված ֆայլի փոփոխականները ծառայությանը փոխանցելու մեկ այլ եղանակ է։ Նախագծի ինտերպոլացիայի ֆայլը չի գործում որպես կոնտեյների անուղղակի env_file։
Ստուգել, թե ինչ հասավ հավելվածին
docker compose config ցույց է տալիս լուծված ծառայության կոնֆիգուրացիան։ docker compose config --environment փոխարենը ցույց է տալիս ինտերպոլացիայի համար օգտագործված արժեքները։
Համեմատեք ծառայության միջավայրը հավելվածի պրոցեսի հետ։ Գոյություն ունեցող կոնտեյները նոր արժեքներ չի ստանում, երբ խմբագրում եք .env-ը. կիրառեք փոփոխությունը նախատեսված Compose կենսացիկլի միջոցով՝ հաշվի առնելով ծառայության ընդհատումը։
Եթե փոփոխականը բացակայում է, ուղղեք ծառայության կոնֆիգուրացիան։ Եթե այն կա, բայց հարցումները մնում են ուղիղ, ստուգեք HTTP հաճախորդի պրոքսի աջակցությունը։ Միջավայրի ներարկումը տալիս է կոնֆիգուրացիա, հավելվածը պետք է օգտագործի այն։