Podman pasta: เข้าถึงพร็อกซีลูปแบ็กของโฮสต์จากคอนเทนเนอร์แบบไม่มี root
ใช้การส่งต่อ TCP ของ pasta จากเนมสเปซไปยังโฮสต์สำหรับพร็อกซีลูปแบ็กที่มีอยู่ และแยกจากการเผยแพร่พอร์ตของคอนเทนเนอร์
127.0.0.1:8118 ของโฮสต์และ 127.0.0.1:8118 ของคอนเทนเนอร์โดยปกติเป็น ปลายทางลูปแบ็กที่แยกจากกัน การส่งตัวแปรพร็อกซีเข้าไปในคอนเทนเนอร์แบบไม่มี root ไม่ได้เชื่อมอินเทอร์เฟซลูปแบ็กเหล่านั้นเข้าด้วยกัน
ในการติดตั้ง Podman ที่ใช้ pasta การส่งต่อ TCP จากเนมสเปซไปยังโฮสต์สามารถเปิดเผยพอร์ตของโฮสต์ที่ต้องการภายในเนมสเปซได้:
podman run --network=pasta:-T,8118 \
--env http_proxy=http://127.0.0.1:8118 \
--env https_proxy=http://127.0.0.1:8118 \
existing-image application-commandใช้ image และคำสั่งที่มีอยู่ของแอปพลิเคชัน ตัวอย่างสมมติว่ามีพร็อกซี HTTP ทำงานอยู่ฝั่งโฮสต์ที่พอร์ต 8118 และมี Podman/pasta เวอร์ชันที่รองรับตัวเลือกการส่งต่อที่แสดง
ตัว -T พิมพ์ใหญ่ของ pasta ส่งต่อจากเนมสเปซเป้าหมายไปยังเนมสเปซของโฮสต์ ตัว -t พิมพ์เล็กและ --publish ของ Podman ไปในทิศทางตรงข้าม ดังนั้นการเผยแพร่พอร์ต 8118 ของคอนเทนเนอร์จึงไม่ได้ทำให้พร็อกซีของโฮสต์พร้อมใช้กับคอนเทนเนอร์โดยตัวมันเอง
Podman ปิดการส่งต่อพอร์ตอัตโนมัติจากเนมสเปซไปยังโฮสต์เป็นค่าเริ่มต้น พอร์ตที่ระบุชัดเจนจะเป็นตัวเลือกบริการที่ต้องการที่นี่ ตัวเลือก pasta:--map-gw แยกต่างหากเกี่ยวกับการเข้าถึงโฮสต์ผ่านที่อยู่เกตเวย์ ซึ่งเป็นการจัดวางอีกแบบ
เมื่อใช้ Compose ให้ตรวจสอบผู้ให้บริการจริงและการกำหนดค่าเครือข่ายที่สร้างขึ้น เครือข่ายบริดจ์ที่มีชื่อไม่ได้กลายเป็นเนมสเปซ pasta โดยอัตโนมัติเพียงเพราะคำสั่ง podman run แยกใช้ pasta สำเร็จ เอนจิน Podman ระยะไกลก็วาง “โฮสต์” ไว้ที่ตำแหน่งของเอนจิน