అయినప్పటికీ, డాకర్లో పని చేస్తున్నప్పుడు, మేము డాకర్ వనరులను సృష్టించి, ఉపయోగించాల్సిన సందర్భాలు ఎదురవుతాయి కానీ రూట్ యాక్సెస్ లేదు.
లేదా మీరు అందరు యూజర్ల రూట్ అనుమతిని ఇవ్వకుండానే డాకర్ని యాక్సెస్ చేయడానికి మరియు ఉపయోగించడానికి ఇచ్చిన సిస్టమ్లోని బహుళ వినియోగదారులను అనుమతించాలనుకుంటున్నారు.
ఈ ట్యుటోరియల్లో, రూట్లెస్ డాకర్ గురించి, దాని అర్థం ఏమిటి, ఇది ఎలా పని చేస్తుంది మరియు రూట్ యాక్సెస్ లేని వినియోగదారులను డాకర్ మరియు దాని అనుబంధ సేవలను ఉపయోగించడానికి అనుమతించడానికి మేము దానిని ఎలా ఉపయోగించవచ్చో నేర్చుకుంటాము.
రూట్లెస్ డాకర్ అంటే ఏమిటి?
డిఫాల్ట్గా, మీరు డాకర్ని ఇన్స్టాల్ చేసిన తర్వాత, డాకర్ డెమోన్ మరియు దాని సాధనాలకు హోస్ట్ సిస్టమ్లో రూట్ అధికారాలు అవసరం. డాకర్ రాజీపడినట్లయితే ఇది గణనీయంగా భద్రతా ప్రమాదానికి దారితీయవచ్చు, ఇది దాడి చేసేవారికి రూట్ యాక్సెస్ని ఇస్తుంది.
రూట్లెస్ డాకర్ అనేది రూట్ అనుమతులు లేకుండా డాకర్ డెమోన్ మరియు అనుబంధిత కంటైనర్లను ఉపయోగించడానికి మరియు అమలు చేయడానికి మమ్మల్ని అనుమతించే ఒక ఫీచర్.
అది ఎలా పని చేస్తుంది
రూట్లెస్ డాకర్ ఎన్విరాన్మెంట్ యొక్క సాంకేతిక పనితీరులోకి ప్రవేశించడం సవాలుగా ఉన్నప్పటికీ, కిందిది రూట్లెస్ డాకర్ ఏమి చేస్తుందో మరియు అది హుడ్ కింద ఎలా పనిచేస్తుందో వివరించే ఉన్నత-స్థాయి అవలోకనం.
యూజర్ నేమ్స్పేస్లు – రూట్లెస్ డాకర్ ఉపయోగించే ముఖ్యమైన ఫీచర్లలో ఒకటి యూజర్ నేమ్స్పేస్లు. Linux కెర్నల్ యొక్క ఈ ప్రాథమిక లక్షణం బయటితో పోలిస్తే నేమ్స్పేస్ లోపల విభిన్న వినియోగదారు మరియు సమూహ IDలను కలిగి ఉండటానికి ప్రక్రియలను అనుమతిస్తుంది. దీనర్థం ఒక ప్రక్రియ దాని నేమ్స్పేస్లో రూట్ యూజర్గా నడుస్తుంది, కానీ దాని వెలుపల, ఇది సాధారణ వినియోగదారుగా నడుస్తుంది.
నెట్వర్కింగ్ – రూట్లెస్ డాకర్ యొక్క తదుపరి ఫీచర్ నెట్వర్కింగ్. డిఫాల్ట్గా, సాధారణ డాకర్ డెమోన్ రూట్ అనుమతులు అవసరమయ్యే iptables మరియు బ్రిడ్జ్ల వంటి నెట్వర్కింగ్ స్టాక్లపై ఆధారపడుతుంది.
రూట్లెస్ డాకర్లో వినియోగదారు-మోడ్ TCP/IP స్టాక్ను అందించే slirp4netns వంటి ఫీచర్లను డాకర్ సద్వినియోగం చేసుకుంటుంది. ఇది హోస్ట్ సిస్టమ్లో రూట్ అనుమతి లేకుండా నెట్వర్క్ను యాక్సెస్ చేయడానికి డాకర్ని అనుమతిస్తుంది.
నిల్వ – రూట్లెస్ డాకర్ యొక్క తదుపరి ముఖ్యమైన భాగం స్టోరేజ్ డ్రైవర్. డిఫాల్ట్గా, డాకర్ ఓవర్లే2 స్టోరేజ్ డ్రైవర్ను ఉపయోగిస్తుంది, దీనికి రూట్ అనుమతులు అవసరం అని మీరు ఊహించవచ్చు. బదులుగా, రూట్లెస్ డాకర్ ఉదాహరణ ఫ్యూజ్-ఓవర్లేఫ్స్ డ్రైవర్ను ఉపయోగిస్తుంది. ఈ డ్రైవర్ FUSE ఓవర్లే fsపై ఆధారపడి ఉంటుంది, ఇది రూట్ అనుమతులు లేకుండా మౌంట్ చేయడానికి అనుమతిస్తుంది.
పైన పేర్కొన్నవి రూట్లెస్ డాకర్ ఉదాహరణ యొక్క కొన్ని ముఖ్యమైన భాగాలు. ఇది రూట్లెస్ డాకర్ యొక్క పూర్తి పనితీరును అన్వేషించదని గుర్తుంచుకోండి. మరింత తెలుసుకోవడానికి డాక్యుమెంటేషన్ను పరిగణించండి.
రూట్లెస్ డాకర్ - అవసరాలు
మనం సిద్ధాంతం నుండి కదిలి, రూట్లెస్ డాకర్ వాతావరణాన్ని ఎలా సృష్టించాలో మరియు కాన్ఫిగర్ చేయాలో నేర్చుకుందాం.
ఈ పోస్ట్తో పాటు అనుసరించడానికి, మీరు ఈ క్రింది వాటిని కలిగి ఉన్నారని నిర్ధారించుకోండి:
- రూట్ అనుమతులతో కూడిన Linux-ఆధారిత సిస్టమ్.
- నెట్వర్క్ యాక్సెస్.
UIDMapతో సిస్టమ్ను కాన్ఫిగర్ చేస్తోంది
డాకర్ను ఇన్స్టాల్ చేయడానికి మరియు కాన్ఫిగర్ చేయడానికి ముందు, మేము తప్పనిసరిగా uidmap యుటిలిటీతో సిస్టమ్ను ఇన్స్టాల్ చేసి కాన్ఫిగర్ చేయాలి.
UIDMap యూజర్ నేమ్స్పేస్ల కంటెంట్లో Linux సిస్టమ్లోని ప్రక్రియల UID మరియు GUI మ్యాపింగ్లను నిర్వహించడానికి అనుమతిస్తుంది. రూట్లెస్ డాకర్ యూజర్ నేమ్స్పేస్ల ప్రయోజనాన్ని పొందుతుందని మేము ప్రస్తావించినప్పుడు గుర్తుందా? ఈ సాధనం UID మరియు GID మ్యాపింగ్లు మరియు వాటి సంబంధిత నేమ్స్పేస్లను పేర్కొనడానికి మమ్మల్ని అనుమతిస్తుంది.
సిస్టమ్ ప్యాకేజీలను ఈ క్రింది విధంగా రిఫ్రెష్ చేయడం ద్వారా ప్రారంభించండి:
$ సుడో apt-get updateతరువాత, చూపిన విధంగా uidmap యుటిలిటీని ఇన్స్టాల్ చేయండి:
$ సుడో apt-get install uidmap -మరియు
రూట్లెస్ డాకర్ని ఇన్స్టాల్ చేస్తోంది
రూట్లెస్ డాకర్ని ప్రాసెస్ చేయడం మరియు ఇన్స్టాల్ చేయడం తదుపరి దశ. దిగువ వివరించిన సాధారణ దశలను అనుసరించడం ద్వారా మేము దీన్ని చేయవచ్చు:
దిగువ చూపిన లింక్ నుండి రూట్లెస్ డాకర్ ఇన్స్టాలర్ స్క్రిప్ట్ను డౌన్లోడ్ చేయడం ద్వారా ప్రారంభించండి:
https://get.docker.com/rootless
మీరు కర్ల్ లేదా WGETని ఉపయోగించవచ్చు.
$ కర్ల్ -sSL https: // get.docker.com / మూలలేని | sh
మీరు పై ఆదేశాన్ని రూట్ యూజర్గా అమలు చేయలేరని గమనించండి.
ఇన్స్టాలేషన్ పూర్తయిన తర్వాత, మీకు ఇష్టమైన టెక్స్ట్ ఎడిటర్ని ఉపయోగించి మీ .bashrc ఫైల్ని సవరించండి:
$ నానో .bashrcతరువాత, bashrc కాన్ఫిగరేషన్ ఫైల్కు క్రింది ఎంట్రీలను జోడించండి:
ఎగుమతి XDG_RUNTIME_DIR = / ఇల్లు / ఉబుంటు / .డాకర్ / పరుగుఎగుమతి మార్గం = / ఇల్లు / ఉబుంటు / డబ్బా: $PATH
ఎగుమతి DOCKER_HOST = యునిక్స్: /// ఇల్లు / ఉబుంటు / .డాకర్ / పరుగు / డాకర్.గుంట
మీరు డాకర్ని ఇన్స్టాల్ చేయాలనుకుంటున్న వినియోగదారుని “ఉబుంటు” నుండి వినియోగదారుని మార్చారని నిర్ధారించుకోండి. స్క్రిప్ట్ అవుట్పుట్ .bashrc ఫైల్కి జోడించడానికి మీకు కంటెంట్లను అందిస్తుంది.
మార్పులను సేవ్ చేసి, ఎడిటర్ను మూసివేయండి.
తదుపరి దశలో, మేము రూట్లెస్ డాకర్ డెమోన్ను ప్రారంభించాలి. దిగువ ఆదేశంలో చూపిన విధంగా మనం systemctlని ఉపయోగించి దీన్ని చేయవచ్చు:
systemctl --ఉబుంటు డాకర్ ప్రారంభించండిప్రారంభించిన తర్వాత, మీరు డాకర్ కంటైనర్లను ప్రారంభించడానికి మరియు కాన్ఫిగర్ చేయడానికి డాకర్ ఆదేశాలను ఉపయోగించవచ్చు.
ముగింపు
ఈ ట్యుటోరియల్లో, రూట్లెస్ డాకర్ యొక్క కార్యాచరణ, అది ఎలా పని చేస్తుంది మరియు లైనక్స్ సిస్టమ్లో దానిని ఎలా కాన్ఫిగర్ చేయవచ్చో తెలుసుకున్నాము. మరింత తెలుసుకోవడానికి రూట్లెస్ డాకర్ డాక్యుమెంటేషన్ని తనిఖీ చేయడానికి సంకోచించకండి.