การส่งผ่านตัวแปรพร็อกซีของ 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 การใส่ค่าผ่านสภาพแวดล้อมเป็นการจัดหาการกำหนดค่า แอปพลิเคชันต้องนำไปใช้เอง