yum กับ Red Hat Network Subscription ทำงานอย่างไรในอิมเมจของ Rhel Docker


10

Red Hat Enterprise Linux 7 มีการสนับสนุนอย่างเป็นทางการสำหรับการเรียกใช้คอนเทนเนอร์ Docker และ Red Hat นำเสนอชุดของรูปภาพ Rhel Docker อย่างเป็นทางการ คุณสมบัติที่น่าสนใจของอิมเมจเหล่านี้คือแพ็คเกจสามารถติดตั้งผ่านการสมัครสมาชิกเครือข่าย Red Hat ของโฮสต์โดยไม่ต้องทำการกำหนดค่าใด ๆ ภายในคอนเทนเนอร์

หากต้องการอ้างถึงhttps://access.redhat.com/articles/881893#createimage :

"สำหรับรีลีส Red Hat Docker ในปัจจุบันรูปภาพ RHEL 7 Docker เริ่มต้นที่คุณดึงจาก Red Hat จะสามารถดึงสิทธิ RHEL 7 ที่มีอยู่จากระบบโฮสต์ดังนั้นตราบใดที่โฮสต์ Docker ของคุณสมัครอย่างถูกต้องและที่เก็บข้อมูลนั้น เปิดการใช้งานที่คุณต้องได้รับซอฟต์แวร์ที่คุณต้องการในคอนเทนเนอร์ของคุณ (และมีการเข้าถึงอินเทอร์เน็ตจากโฮสต์ Docker ของคุณ) คุณควรจะสามารถติดตั้งแพคเกจจากคลังซอฟต์แวร์ RHEL 7 ได้ "

ความกังวลของฉันคือกลไกที่ทำให้สิ่งนี้บรรลุผลนั้นค่อนข้างทึบแสง เมื่อเริ่มต้นคอนเทนเนอร์ใหม่ด้วยอิมเมจ rhel7.1 เป็นไปได้ที่จะสามารถรันได้yum install fooโดยไม่ต้องกำหนดค่าตัวแปรสภาพแวดล้อม HTTP proxy หากไม่มีความเข้าใจในกลไกนี้ผู้ดูแลระบบอาจเป็นที่โปรดปรานของการโต้ตอบที่ไม่รู้จักระหว่างระบบโฮสต์, Docker daemon และการเรียกใช้คอนเทนเนอร์ สิ่งนี้ยังแสดงให้เห็นว่าการแยกตามปกติระหว่างโฮสต์และตู้คอนเทนเนอร์นั้นเป็นไปในทางที่ไม่ปลอดภัย (แม้ว่าจะเป็นแบบที่ไม่เป็นทางการ)

ในการระบุจุด: การสนับสนุนการสมัครสมาชิกนี้ประสบความสำเร็จได้อย่างไรและขึ้นอยู่กับโครงสร้างที่กำหนดเองของ Docker daemon ที่ Red Hat จัดหาผ่านเครือข่ายการสมัครสมาชิกหรือไม่



ขอบคุณ @ ไมเคิล น่าเสียดายที่ฉันไม่สามารถเข้าถึงคำตอบที่โพสต์บนเว็บไซต์นั้นได้เนื่องจากฉันไม่มีบัญชีส่วนตัวสมัครสมาชิก Red Hat (บัญชีที่นายจ้างของฉันใช้นั้นจัดขึ้นโดยพนักงานในที่อื่น ๆ ในองค์กร) ฉันจะดูว่าคนที่มีการเข้าถึงที่เกี่ยวข้องในองค์กรสามารถให้สำเนาคำตอบ KB นี้ให้ฉันได้หรือไม่
Leynos

@michael คุณควรแสดงความคิดเห็นของคุณเป็นคำตอบ imho
Bram

@MichaelHampton ฉันมีโอกาสได้อ่านคำตอบในเว็บไซต์ Red Hat อาจเป็นที่น่าสังเกตว่าคำตอบใด ๆ ที่โพสต์ไว้ที่นี่นั้นขึ้นอยู่กับรุ่นที่กำหนดเองของ Docker daemon ของ Red Hat
Leynos

คำตอบ:


4

Red Hat มีชุดข้อมูลแก้ไขเพื่อdockerเรียกว่า 'ความลับ' ซึ่งจะติดตั้งข้อมูลการให้สิทธิ์ลงในคอนเทนเนอร์เมื่อมีการเรียกใช้

คุณสามารถดูคำอธิบายที่ดีขึ้นของแพทช์และลิงค์ไปยัง upstream PR ในrepat Projectomic / docker :

https://github.com/projectatomic/docker/tree/docker-1.13.1-rhel#add-rhel-super-secrets-patchpatch

หมายเหตุคุณจะต้องเลือกสาขาใดสาขาหนึ่ง (ลิงก์ไปที่สาขา 'นักเทียบท่า-1.3.1-rhel') เพื่อดูข้อมูลแพตช์ที่ถูกนำไปใช้ทั้งหมด


ดังนั้นถ้าคุณลองใช้ Docker CE (ซึ่งไม่มีเส้นทางนั้น) แทนที่จะเป็น Red Hat ที่ให้ Docker คุณจะไม่มีข้อมูลการให้สิทธิ์และyumคำสั่งใน Docker build หรืออิมเมจ Docker จะล้มเหลว?
Raedwald

2

เมื่อรู้ว่าเครื่องเสมือนที่จัดการโดย Red Hat Satellite ได้รับอนุญาตและการออกความเห็นของ @ Leynos ฉันคาดหวังว่ามีบางอย่างที่คล้ายกันvirt-whoซึ่งเป็นบริการที่พูดถึงโฮสต์ virtualization (vSphere, KVM, etc) และสอบถามเพื่อ ค้นหารายละเอียดของ VMs จากนั้นจะทำการเรียก API ที่จำเป็นในดาวเทียมเพื่อให้ VM ใช้ใบอนุญาตศูนย์ข้อมูลของโฮสต์

ฉันคาดหวังว่าภูต Red Hat Docker จะให้อะไรที่คล้ายกันทำให้คอนเทนเนอร์รู้ว่ามันกำลังทำงานจากโฮสต์ Docker ที่สมัครสมาชิกและใช้ประโยชน์จากการสมัครสมาชิกนั้น

จากที่นี่ :

สำคัญ: การรันคอนเทนเนอร์ด้วยคำสั่ง docker ดังที่อธิบายไว้ในหัวข้อนี้ไม่ได้กำหนดให้คุณต้องลงทะเบียนระบบ RHEL Atomic Host และแนบการสมัครสมาชิก อย่างไรก็ตามหากคุณต้องการรันคำสั่งติดตั้ง yum ภายในคอนเทนเนอร์คอนเทนเนอร์ต้องได้รับข้อมูลการสมัครสมาชิกที่ถูกต้องจาก RHEL Atomic Host ไม่เช่นนั้นจะล้มเหลว

ดังนั้นมีบางอย่างในคอนเทนเนอร์หรือภูตที่สามารถสอบถามโฮสต์เพื่อค้นหาข้อมูลการสมัครสมาชิก (และอาจเป็นข้อมูลซื้อคืนด้วย)

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.