העברת משתנה פרוקסי של Compose אל מכולה
הפכו משתני פרוקסי לחלק מסביבת השירות של Compose במקום להניח שקובץ .env של הפרויקט מזריק אותם אוטומטית.
קובץ הפרויקט .env של Compose מספק ערכי אינטרפולציה. כדי להעביר אחד מהערכים הללו למכולה, הפנו אליו בתצורת השירות.
לדוגמה, .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}"
החליפו את כתובת התיעוד ואת התמונה; בחרו נקודת קצה HTTP תואמת מהשירות שלכם או מרשימת פרוקסי HTTP. פרוקסי HTTP רגיל יכול להעביר HTTPS דרך CONNECT אם הוא תומך במנהרה המבוקשת.
רשומת env_file מפורשת היא דרך נוספת להעביר משתנים של קובץ נבחר אל שירות. קובץ האינטרפולציה של הפרויקט אינו משמש כenv_file משתמעת של המכולה.
בדיקה מה הגיע אל היישום
docker compose config מציג את תצורת השירות שנפתרה. docker compose config --environment מציג במקום זאת את הערכים ששימשו לאינטרפולציה.
השוו את סביבת השירות לתהליך היישום. מכולה קיימת אינה מקבלת ערכים חדשים כאשר אתם עורכים את .env; החילו את השינוי דרך מחזור החיים המיועד של Compose, תוך התחשבות בהפרעה לשירות.
אם המשתנה חסר, תקנו את תצורת השירות. אם הוא קיים אך הבקשות נשארות ישירות, בדקו את תמיכת פרוקסי של לקוח ה-HTTP. הזרקת סביבה מספקת תצורה; היישום חייב לצרוך אותה.