क्या यह संभव है कि vmware के अंदर docker चल रहा हो?


19

मैं अपनी देव जरूरतों के लिए vmware वर्कस्टेशन चलाता हूं और अलग-अलग वातावरण के लिए अलग-अलग VMs बनाए रखना पड़ता है।

डॉकटर कंटेनर में अलग-अलग वातावरण चलाने की अनुमति देता है, इसलिए

  1. मेरे विंडोज 10 x 64 वीएम के अंदर मैं अपना कोड विकसित करने, बनाने और परीक्षण करने के लिए डॉकटर चला सकता हूं और विभिन्न छवियों और कंटेनरों का उपयोग कर सकता हूं? (याद रखें कि मैं VMware कार्य केंद्र में अपने देव एनवायरनमेंट चला रहा हूं जबकि डॉक वर्चुअलबॉक्स का उपयोग करता है)

  2. मैं अपने एप्लिकेशन (कोड + डेटाबेस + वेब एपि + .....) को उत्पादन के लिए कैसे जहाज / ले जाऊं? क्या उत्पादन मशीन को हम अच्छी तरह से चलाने की आवश्यकता है?

कृपया स्पष्ट करने में मदद करें।

अपडेट करें

VMWare से मेरा मतलब है VMWare वर्कस्टेशन प्रो।

जवाबों:


12

हां , डॉक को वीएम में चलाना पूरी तरह संभव है। डॉकर एक हल्का वर्चुअलाइजेशन समाधान है, यह हार्डवेयर का वर्चुअलाइजेशन नहीं करता है, इसलिए आप नेस्टेड वीएम के लिए विशिष्ट समस्याओं से प्रभावित नहीं होंगे।

पोर्ट बाइंडिंग हालांकि थोड़ा मुश्किल हो सकता है, क्योंकि आपको किसी तरह अपने VM-VM को VMware में Docker VM के साथ VirtualBox में कनेक्ट करना होगा।

यदि आप किसी डॉकटर कंटेनर में होस्ट के फ़ोल्डरों को एक सेवा में उजागर करना चाहते हैं, तो आप समस्याओं में भी भाग सकते हैं। विंडोज की फाइल सिस्टम की अनुमति ग्रैन्युलैरिटी के संदर्भ में लिनक्स वालों की तुलना में सीमित है और कुछ सेवाओं को यह पसंद नहीं है। (यह मुद्दा डॉकर-विशिष्ट नहीं है)

सामान्य तौर पर, आपका एप्लिकेशन उत्पादन में Docker पर लॉक नहीं किया जाता है। Dockerized सेवाएं नेटवर्क के माध्यम से दुनिया के साथ संवाद करती हैं, जो आमतौर पर नियमित सेवाओं से अलग नहीं होती हैं। हालांकि, डॉकियर (या, आमतौर पर, बादल) को ध्यान में रखकर बनाया गया एक ऐप विफलताओं के लिए अधिक लचीला और बनाए रखने में आसान हो सकता है।


5

यह ब्लॉग VMWare वर्कस्टेशन के साथ विंडोज पर डॉकर का उपयोग करने के तरीके के बारे में बात करता है। तुम भी विंडोज 7 का उपयोग कर सकते हैं।

https://stefanscherer.github.io/yes-you-can-docker-on-windows-7/

खिड़कियों के लिए पहले चॉकलेट पैकेज प्रबंधक स्थापित करें (यह एक-पंक्ति कमांड है)

@"%SystemRoot%\System32\WindowsPowerShell\v1.0\powershell.exe" -NoProfile -ExecutionPolicy Bypass -Command "iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))" && SET "PATH=%PATH%;%ALLUSERSPROFILE%\chocolatey\bin"

फिर VMWare वर्कस्टेशन का उपयोग करने के लिए डॉकर स्थापित करें

choco install -y docker  
choco install -y docker-machine  
choco install -y docker-machine-vmwareworkstation  

एक डिफ़ॉल्ट vm बनाएँ

docker-machine --native-ssh create -d vmwareworkstation default  

अपने पर्यावरण चर सेट करें

docker-machine env | iex

अब आप आरंभ करने के लिए पूरी तरह तैयार हैं।


अति उत्कृष्ट! इसे साझा करने के लिए धन्यवाद। पुनश्च: अंतिम पंक्ति PowerShell के लिए है, बिना "। Iex" जो कि cmd में काम करेगी
दिमित्री गुसरोव

Chocolatey मेरे लिए नया था, यह एक अच्छा प्रारंभिक बिंदु था: hanselman.com/blog/…
ccook

1
बस किसी और ने लिंक को पढ़े बिना यह कोशिश की कि "एक डिफ़ॉल्ट vm बनाएँ" कमांड होनी चाहिए: docker-machine --native-ssh create -d vmwareworkstation default(नोट गायब है "-")
नील

2
  1. हां, आप विंडोज पर डॉक चला सकते हैं। VMWare पर विंडोज भी काम करता है। हम VMWare पर लिनक्स सर्वर पर डॉक चलाते हैं।
  2. होशियार यह होगा कि आप उत्पादन मशीन पर भी डॉक करें, लेकिन कंटेनरों से अपने डेटा को कॉपी करना संभव होगा। मैं हालांकि यह अनुशंसा नहीं करता हूं।
    आप docker saveफ़ाइलों को अपने docker छवियों को सहेजने के लिए उपयोग कर सकते हैं ।
    मुझे लगता है कि यह ध्यान देने योग्य है कि यह एक ही कंटेनर के अंदर कई एप्लिकेशन चलाने की अनुशंसा नहीं करता है और यह आपके कंटेनर के अंदर डेटा स्टोर करने के लिए अनुशंसित नहीं है, आपको इसके लिए वॉल्यूम का उपयोग करना चाहिए।

आपके उत्तर के लिए धन्यवाद, लेकिन कृपया स्पष्ट करें कि आपने कहा "VMWare पर विंडोज भी काम करता है" लेकिन क्या आपका मतलब था "VMWare पर डॉकटर भी काम करता है"?
हमजा अहमद ज़िया

@ HamzaAhmedZia "VMWare" वास्तव में क्या है? ESXi? कार्य केंद्र? विशिष्ट बनें और अपने प्रश्न को संपादित करें। वर्कस्टेशन केवल लिनक्स और विंडोज पर मौजूद है।
रामहुंड

@ रामहाउंड का मतलब है वर्कस्टेशन। अपडेटेड सवाल
हमजा अहमद ज़िया

@ HamzaAhmedZia इसलिए वर्कस्टेशन के संदर्भ में, इस उत्तर के लेखक इंगित करते हैं, कि आप एक डॉक विंडोज विंडोज VMWare वर्कस्टेशन वीएम के भीतर चला सकते हैं।
रामहुंड

@ मिकेल उत्पादन के लिए शिपिंग के लिए आपकी सिफारिश क्या है क्योंकि आप कहते हैं कि आप कंटेनरों से डेटा कॉपी करने की अनुशंसा नहीं करते हैं?
हमजा अहमद जिया

0

डॉक होस्ट (लिनक्स या विंडोज) के बीच एक बड़ा अंतर है:

  • लिनक्स मेजबान तो VMware कार्य केंद्र में, आप एक मानक लिनक्स, डोकर इंजन किसी भी कंटेनर समस्याओं के बिना स्थापित कर सकते हैं तो और चलाने के किसी भी वर्चुअलाइजेशन प्रौद्योगिकियों की जरूरत नहीं है
  • विंडोज मेजबान क्योंकि हुड के नीचे एक अलग आवश्यकता है, यह एक हाइपर वी लिनक्स वी एम बनाता है (में विवरण https://rancher.com/the-similarities-and-differences-between-windows-and-linux-containers/ )

इसलिए एक Vmware वर्कस्टेशन (अपने भौतिक विंडोज पर) में विंडोज डॉकटर होस्ट पर, आपके पास एक नेस्टेड हाइपरवि लिनक्स वीएम है! यह एक बड़ा मुद्दा नहीं है, बस नेस्टेड वर्चुअलाइजेशन को सक्षम करने के लिए सावधान रहें।

फ़्राँस्वा


यदि Windows कंटेनर मोड में Windows के लिए Docker चला रहा है और LCoW साइड-बाय-साइड का उपयोग कर रहा है, तो एक हाइपर वीएम होस्ट करने के बारे में विंडोज की बात गलत है। इसमें अन्य समस्याएं हैं, लेकिन होस्ट ओएस पर आधारित डॉकर के अज्ञेयवाद के बारे में जुड़े हुए लेखों में सबसे अच्छी तरह से देखा गया है, जहां मोबी प्रोजेक्ट विन 10. पर विंडोज कंटेनर आधारित डॉक के साथ जा रहा है, लेकिन मुझे पता चलने में एक सप्ताह ही बचा है रक्तस्राव की धार अभी भी रक्त खींच रही है, और केवल अग्रणी-धार के खतरे के स्तर तक नीचे नहीं लौटती है। इस बिंदु पर यह एक और छह महीने की तरह दिखता है जब तक कि यह दैनिक चालक के रूप में तैयार न हो।
टेटसुजिन नो ओनी
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.