कंटेनरीकरण के लिए आवश्यक एक प्रमुख तत्व नेटवर्किंग और अन्य सेवाओं का अलगाव है, लेकिन अलगाव ही नहीं, बल्कि वर्चुअलाइजेशन भी है । फ्रीबीएसडी जेल, लिनक्स "कंटेनर" (या अधिक सही ढंग से "नामस्थान"), और सोलारिस / इलुमोस ज़ोन सभी इन ऑपरेटिंग सिस्टम सिस्टम सेवाओं के "वर्चुअलाइजेशन" की कुछ डिग्री प्रदान करते हैं।
वर्चुअलाइजेशन द्वारा, इसका मतलब है कि ये सर्वर "कंटेनर" के अंदर चीजों के लिए उपलब्ध (या संभावित रूप से उपलब्ध ) हैं, लेकिन एक तरह से जो कंटेनर के बाहर एक ही मेजबान पर अन्य चीजों की रक्षा करते हैं। (उदाहरण के लिए, एक कंटेनर का अपना टीसीपी / आईपी स्टैक हो सकता है, अपने स्वयं के आईपी पते, एआरपी कैश आदि के साथ)
ओएस (ऑपरेटिंग सिस्टम) वर्चुअलाइजेशन है कि हम आम तौर पर इस प्रकार के "लाइट-वेट" वर्चुअलाइजेशन का संदर्भ देते हैं, जहां प्रक्रियाओं को लगता है कि वे एक वर्चुअल कर्नेल देखते हैं, लेकिन सभी हूड के तहत एक ही असली कर्नेल साझा कर रहे हैं; यह सुनिश्चित करने के लिए कि कर्नेल कंटेनर / वर्चुअलाइजेशन सीमाओं को पार नहीं कर रहा है, कर्नेल एक प्रकार के हाइपरवाइजर के रूप में कार्य करता है। (एक और तरीका रखो, ओएस सेवाओं को वर्चुअलाइज्ड किया जाता है।) इसकी तुलना हार्डवेयर वर्चुअलाइजेशन से करें, जहां वर्चुअलाइज्ड हार्डवेयर होता है - जैसे उपकरणों को सॉफ्टवेयर में अनुकरण किया जाता है और कंटेनर में चलने वाले ऑपरेटिंग सिस्टम को प्रस्तुत किया जाता है। यह बहुत शक्तिशाली है, लेकिन काफी संसाधन गहन है - प्रत्येक वर्चुअल मशीन के पास ऑपरेटिंग सिस्टम की अपनी प्रति होनी चाहिए।
हाल के macOS के पास Hypervisor.framework के माध्यम से देशी हाइपरवाइज़र समर्थन है, जो "XHyve" [FreeBSD's BHyve का एक पोर्ट] (macOS का उपयोग करता है) जैसे सॉफ़्टवेयर की अनुमति देता है, लेकिन ऑपरेटिंग सिस्टम को पूरी तरह से वर्चुअलाइज करने के लिए हुड के तहत आवश्यक सेवाओं का अभाव है।
सही मायने में, बहुत सी चीज़ों की ज़रूरत शायद पहले से ही मौजूद है, क्योंकि सैंडबॉक्स प्रदान करने के लिए काम का मतलब है कि पहले से ही तार्किक बिंदु हैं जहां सिस्टम कॉल इंटरसेप्टेड हैं और अलग-अलग अनुप्रयोगों के लिए अलग-अलग हैंडल किए जाते हैं। हालांकि, यह पूरी कहानी से बहुत दूर है - सही अलग नेटवर्क, आईपीसी और अन्य नामस्थानों को लागू करना काफी काम है।
Apple ने ऐसा क्यों नहीं किया है इसका सबसे अच्छा कारण संभवतः यही कारण है कि Apple ने कई वर्षों से डेटा सेंटर में macOS चलाने के लिए उपयुक्त मंच जारी नहीं किया है - बाजार की मांग में कमी, या Apple नेतृत्व द्वारा बाजार की मांग की कमी। डेस्कटॉप और मोबाइल फोकस जहां उन्होंने अपना ध्यान केंद्रित किया है, बस वर्चुअल macOS उदाहरणों की आवश्यकता नहीं है। (यह दुखद है, क्योंकि मुझे वर्चुअल macOS सपोर्ट पसंद आएगा - उदाहरण के लिए ट्रैविस CI पर वीएमएस पर macOS चलाने के लिए लिनक्स कंटेनरों की तुलना में वास्तव में समय लगता है)।