అదే Windows మెషీన్లో డాకర్ మరియు VMWare వర్క్స్టేషన్
పని చాలా సులభం, Windowsతో నా వర్క్ ల్యాప్టాప్లో డాకర్ను ఇన్స్టాల్ చేయండి, ఇది ఇప్పటికే జూని కలిగి ఉంది. నేను డాకర్ డెస్క్టాప్ను ఇన్స్టాల్ చేసాను, కంటైనర్లను సృష్టించాను, ప్రతిదీ సరిగ్గా ఉంది, కానీ VMWare వర్క్స్టేషన్ లోపంతో వర్చువల్ మిషన్లను ప్రారంభించడాన్ని ఆపివేసినట్లు నేను త్వరగా కనుగొన్నాను:
VMware Workstation and Device/Credential Guard are not compatible. VMware Workstation can be run after disabling Device/Credential Guard.
పని ఆగిపోయింది, అత్యవసరంగా పరిష్కరించాల్సిన అవసరం ఉంది
గూగ్లింగ్ చేయడం ద్వారా, ఒకే మెషీన్లోని VMWare వర్క్స్టేషన్ మరియు హైపర్-V యొక్క అననుకూలత కారణంగా ఈ లోపం సంభవిస్తుందని కనుగొనబడింది. సమస్య తెలుసు మరియు ఇలాంటి అధికారిక VMWare పరిష్కారం ఉంది పరిష్కరించండి, Microsoft నాలెడ్జ్ బేస్కి లింక్తో విండోస్ డిఫెండర్ క్రెడెన్షియల్ గార్డ్ని నిర్వహించండి. డిఫెండర్ క్రెడెన్షియల్ గార్డ్ని డిసేబుల్ చేయడం దీనికి పరిష్కారం (విండోస్ డిఫెండర్ క్రెడెన్షియల్ గార్డ్ డిసేబుల్ విభాగంలో పాయింట్ 4 నాకు సహాయపడింది):
మీరు పునఃప్రారంభించిన తర్వాత, డిఫెండర్ క్రెడెన్షియల్ గార్డ్ని నిలిపివేయాలా వద్దా అని Windows మిమ్మల్ని అడుగుతుంది. అవును! ఈ విధంగా VMWare వర్క్స్టేషన్ సాధారణ ఆపరేషన్కు తిరిగి వస్తుంది మరియు మేము డాకర్ని ఇన్స్టాల్ చేసే ముందు అదే స్థలంలో ఉంటాము.
Hyper-V మరియు VMWare వర్క్స్టేషన్లను పునరుద్దరించటానికి నేను ఇప్పటికీ ఒక పరిష్కారాన్ని కనుగొనలేదు, వారు కొత్త వెర్షన్లలో స్నేహితులు అవుతారని నేను ఆశిస్తున్నాను.
మరొక మార్గం
నేను చాలా కాలంగా VMWare వర్క్స్టేషన్లో వివిధ ప్రయోజనాల కోసం కట్టిపడేశాను, Hyper-V మరియు VirtualBoxకి మారడానికి ప్రయత్నించాను, కానీ కార్యాచరణ నా అవసరాలను తీర్చలేదు మరియు నేను ఈ రోజు వరకు అక్కడే ఉండిపోయాను. VMWare, Docker మరియు VSCodeలను ఒకే పని వాతావరణంలో ఎలా కలపాలి అనే దానిపై ఒక పరిష్కారం ఉందని తేలింది.
డాకర్ మెషిన్ — వర్చువల్ హోస్ట్లో డాకర్ ఇంజిన్ని అమలు చేయడానికి మరియు రిమోట్గా మరియు స్థానికంగా దానికి కనెక్ట్ చేయడానికి మిమ్మల్ని అనుమతిస్తుంది. మరియు దాని కోసం VMWare వర్క్స్టేషన్ అనుకూలత డ్రైవర్ ఉంది, github కి లింక్
నేను ప్రత్యేకంగా ఇన్స్టాలేషన్ సూచనలను తిరిగి చెప్పను, పదార్థాల జాబితా మాత్రమే:
అవును, దురదృష్టవశాత్తు, డాకర్ డెస్క్టాప్ కూడా అవసరం అవుతుంది. మీరు దానిని కూల్చివేసినట్లయితే, దాన్ని మళ్లీ ఇన్స్టాల్ చేయండి, కానీ ఈసారి VMWare వర్క్స్టేషన్ను మళ్లీ విచ్ఛిన్నం చేయకుండా ఉండేలా OSకి మార్పులు చేయడం గురించి చెక్బాక్స్ని తీసివేస్తున్నాను.
సాధారణ వినియోగదారు నుండి ప్రతిదీ సరిగ్గా పనిచేస్తుందని నేను వెంటనే గమనించాలనుకుంటున్నాను, ఇన్స్టాలేషన్ ప్రోగ్రామ్లు వారికి అవసరమైనప్పుడు హక్కులను పెంచమని అడుగుతుంది, అయితే కమాండ్ లైన్ మరియు స్క్రిప్ట్లలోని అన్ని ఆదేశాలు ప్రస్తుత వినియోగదారు నుండి అమలు చేయబడతాయి.
ఫలితంగా, ఆదేశం:
$ docker-machine create --driver=vmwareworkstation dev
Boot2Docker నుండి dev వర్చువల్ మిషన్ సృష్టించబడుతుంది, దాని లోపల డాకర్ ఇన్స్టాల్ చేయబడుతుంది.
సంబంధిత vmx ఫైల్ను తెరవడం ద్వారా ఈ వర్చువల్ మిషన్ను VMWare వర్క్స్టేషన్ గ్రాఫికల్ ఇంటర్ఫేస్కు జోడించవచ్చు. కానీ ఇది అవసరం లేదు, ఎందుకంటే VSCode ఇప్పుడు పవర్షెల్ ద్వారా స్క్రిప్ట్గా ప్రారంభించబడాలి (కొన్ని కారణాల వల్ల, డాకర్-మెషిన్ మరియు డాకర్-మెషిన్-డ్రైవర్-vmwareworkstation బిన్ ఫోల్డర్లో ముగుస్తుంది):
cd ~/bin
./docker-machine env dev | Invoke-Expression
code
VSCode స్థానిక మెషీన్లోని కోడ్తో మరియు వర్చువల్ మెషీన్లోని డాకర్తో పని చేయడానికి తెరవబడుతుంది. అనుసంధానించు విజువల్ స్టూడియో కోడ్ కోసం డాకర్ కన్సోల్లోకి వెళ్లకుండా వర్చువల్ మెషీన్లో కంటైనర్లను సౌకర్యవంతంగా నిర్వహించడానికి మిమ్మల్ని అనుమతిస్తుంది.
కష్టాలు:
డాకర్-మెషిన్ సృష్టి సమయంలో, నా ప్రక్రియ స్తంభించిపోయింది:
Waiting for SSH to be available...
మరియు కొంత సమయం తర్వాత అది వర్చువల్ మెషీన్తో కనెక్షన్ని ఏర్పరచడానికి మరిన్ని ప్రయత్నాలతో ముగిసింది.
ఇదంతా సర్టిఫికేట్ పాలసీకి సంబంధించినది. వర్చువల్ మిషన్ను సృష్టించేటప్పుడు, మీకు ~.dockermachinemachinesdev డైరెక్టరీ ఉంటుంది. ఈ డైరెక్టరీలో SSH ద్వారా కనెక్ట్ చేయడానికి సర్టిఫికేట్ ఫైల్లు ఉంటాయి: id_rsa, id_rsa.pub. OpenSSH వాటిని ఉపయోగించడానికి నిరాకరించవచ్చు ఎందుకంటే వాటికి అనుమతుల సమస్యలు ఉన్నాయని భావిస్తుంది. డాకర్-మెషిన్ మాత్రమే దీని గురించి మీకు ఏమీ చెప్పదు, అది బోరింగ్ అయ్యే వరకు మళ్లీ కనెక్ట్ అవుతుంది.
పరిష్కారం: కొత్త వర్చువల్ మెషీన్ను సృష్టించడం ప్రారంభమైన వెంటనే, ~.dockermachinemachinesdev డైరెక్టరీకి వెళ్లి, పేర్కొన్న ఫైల్ల హక్కులను ఒక్కొక్కటిగా మార్చండి.
ఫైల్ యొక్క యజమాని తప్పనిసరిగా ప్రస్తుత వినియోగదారు అయి ఉండాలి, ప్రస్తుత వినియోగదారు మరియు SYSTEMకి మాత్రమే పూర్తి ప్రాప్యత ఉంటుంది, నిర్వాహకుల సమూహం మరియు నిర్వాహకులతో సహా ఇతర వినియోగదారులందరూ తప్పనిసరిగా తొలగించబడాలి.
Windows ఫార్మాట్ నుండి Posixకి సంపూర్ణ మార్గాలను మార్చడంలో మరియు సింబాలిక్ లింక్ను కలిగి ఉన్న బైండింగ్ వాల్యూమ్లతో సమస్యలు కూడా ఉండవచ్చు. అయితే అది మరో కథ.