ශුභාරංචිය: නව ඩොකර් (19.03 අනුවාදය (දැනට පර්යේෂණාත්මක)) මඟින් root පරිශීලකයෙකු භාවිතා කර ඇතිවිය හැකි ගැටළු නොසලකා හරිමින් ධාවනය කළ හැකිය. ඉහළ අවසරයන්, මූල සහ ඔබට අවශ්ය නොවන විට ඔබේ යන්ත්රය විවෘත කළ හැකි කිසිවක් සමඟ තවදුරටත් අවුල් කිරීම අවශ්ය නොවේ.
[DockerCon 2019] වෙතින් වීඩියෝව Rootless Docker Deemon Rootless මාදිලිය සමඟ
මූල රහිත ඩෝකර් මාදිලියට කේවට් කිහිපයක්
ඩෝකර් ඉංජිනේරුවන් පවසන්නේ මූල රහිත මාදිලිය ඩෝකර් එන්ජින් අංගයන්ගේ සම්පූර්ණ කට්ටලය වෙනුවට ආදේශකයක් ලෙස සැලකිය නොහැකි බවයි. මූල රහිත මාදිලියේ සමහර සීමාවන්ට ඇතුළත් වන්නේ:
- cgroups සම්පත් පාලනයන්, ආරක්ෂක ආරක්ෂණ පැතිකඩ, පිරික්සුම් ස්ථානය / ප්රතිස්ථාපනය, උඩිස් ජාල ආදිය මූල රහිත ප්රකාරයේදී ක්රියා නොකරයි.
- බහාලුම් වලින් වරාය නිරාවරණය කිරීම සඳහා දැනට අතින් සොකට් උපකාරක ක්රියාවලියක් අවශ්ය වේ.
- මූල රහිත මාදිලියේ ගොනු පද්ධති සඳහා සහය දක්වන්නේ උබුන්ටු මත පදනම් වූ ඩිස්ට්රෝස් පමණි.
- Rootless මාදිලිය දැනට ලබා දී ඇත්තේ ඔබ පුරුදු තරම් ස්ථාවර නොවිය හැකි රාත්රී ගොඩනැඟිලි සඳහා පමණි.
ඩොකර් 19.3 අනුව මෙය යල්පැන ඇති (අවශ්යතාවයට වඩා භයානක ය):
මෙම docker අත්පොත මෙම ඒ ගැන කියන්න ඇත:
මූල නොවන ප්රවේශය ලබා දීම
ඩෝකර් ඩීමන් සෑම විටම මූල පරිශීලකයා ලෙස ක්රියාත්මක වන අතර ඩෝකර් අනුවාදය 0.5.2 සිට, ඩොකර් ඩීමන් TCP පෝට් එකක් වෙනුවට යුනික්ස් සොකට්ටුවකට බැඳේ. පෙරනිමියෙන් යුනික්ස් සොකට් පරිශීලක මූලයට අයත් වන අතර පෙරනිමියෙන් ඔබට එය සූඩෝ සමඟ ප්රවේශ විය හැකිය.
0.5.3 වෙළුමේ සිට, ඔබ (හෝ ඔබේ ඩෝකර් ස්ථාපකය) ඩොකර් නමින් යුනික්ස් කණ්ඩායමක් නිර්මාණය කර එයට පරිශීලකයින් එකතු කරන්නේ නම්, ඩෝකන් ඩීමන් විසින් ඩීමන් ආරම්භ වන විට යුනික්ස් සොකට්ටුවේ හිමිකම ඩොකර් කණ්ඩායම විසින් කියවීමට / ලිවීමට හැකි කරයි. . ඩෝකර් ඩීමන් සෑම විටම මූල පරිශීලකයා ලෙස ක්රියාත්මක විය යුතුය, නමුත් ඔබ ඩොකර් සේවාදායකය ඩොකර් කණ්ඩායමේ පරිශීලකයෙකු ලෙස ධාවනය කරන්නේ නම් එවිට ඔබට සියලුම සේවාදායක විධාන වලට සුඩෝ එකතු කිරීමට අවශ්ය නොවේ. 0.9.0 වන විට, ඩොකර් හැර වෙනත් කණ්ඩායමකට -G විකල්පය සමඟ යුනික්ස් සොකට් තිබිය යුතු බව ඔබට නියම කළ හැකිය.
අවවාදයයි: ඩොකර් කණ්ඩායම (හෝ -G සමඟ නිශ්චිතව දක්වා ඇති කණ්ඩායම) මූලයට සමාන ය; බලන්න Docker විබුද්ධයා ප්රහාරක මතුපිට විස්තර හා මෙම පුවත්පත් කලාවේදියෝ අපි root නොවන පරිශීලකයන් CentOS දී Docker, ෆෙඩෝරා, හෝ RHEL ක්රියාත්මක ඉඩ දෙන්න එපා ඇයි (ස්තුති michael-n).
මෑතකදී GitHub හි පර්යේෂණාත්මක මූල රහිත මාදිලිය මුදා හැරීමේදී , ඉංජිනේරුවන් සඳහන් කරන්නේ rootless මාදිලිය පරිශීලක නාම නාම (7), mount_namespaces (7), network_namespaces (7) භාවිතා කරමින් ඩොකර්ඩ් අසමසම පරිශීලකයෙකු ලෙස ධාවනය කිරීමට ඉඩ දෙන බවයි.
පරිශීලකයින්ට dockerd වෙනුවට dockerd-rootless.sh ධාවනය කළ යුතුය.
$ dockerd-rootless.sh --experimental
Rootless මාදිලිය පර්යේෂණාත්මක බැවින් පරිශීලකයින්ට සෑම විටම dokerd-rootless.sh ධාවනය කළ යුතුය.
කියවීමට වැදගත්: ලිනක්ස් සඳහා පශ්චාත් ස්ථාපන පියවර (එය ඩෝකර් ඩීමන් ප්රහාරක මතුපිට විස්තර සමඟ සම්බන්ධ වේ ).
මූල නොවන පරිශීලකයෙකු ලෙස ඩොකර් කළමනාකරණය කරන්න
ඩොකර් ඩීමන් TCP වරායක් වෙනුවට යුනික්ස් සොකට්ටුවකට බැඳේ. පෙරනිමියෙන් යුනික්ස් සොකට් පරිශීලක මූලයට අයත් වන අතර අනෙක් පරිශීලකයින්ට එය ප්රවේශ කළ හැක්කේ සුඩෝ භාවිතයෙන් පමණි. ඩොකර් ඩීමන් සෑම විටම මූල පරිශීලකයා ලෙස ක්රියාත්මක වේ.
ඔබ ඩොකර් විධානය භාවිතා කරන විට සුඩෝ භාවිතා කිරීමට අකමැති නම්, ඩොකර් නමින් යුනික්ස් කණ්ඩායමක් සාදා එයට පරිශීලකයින් එක් කරන්න. ඩෝකර් ඩීමන් ආරම්භ වන විට, එය යුනික්ස් සොකට්ටුවේ හිමිකම ඩොකර් කණ්ඩායම විසින් කියවීමට / ලිවීමට සලස්වයි.
ඩොකර් කණ්ඩායම දැනටමත් නොපවතී නම් එය එක් කරන්න:
sudo groupadd docker
සම්බන්ධිත පරිශීලකයා "$ USER" ඩොකර් කණ්ඩායමට එක් කරන්න. ඔබගේ වර්තමාන පරිශීලකයා භාවිතා කිරීමට ඔබට අවශ්ය නැතිනම් ඔබ කැමති පරිශීලකයාට ගැලපෙන පරිදි පරිශීලක නාමය වෙනස් කරන්න:
sudo gpasswd -a $USER docker
newgrp docker
කණ්ඩායම් වලට වෙනස්කම් සක්රිය කිරීම සඳහා එක්කෝ කරන්න හෝ ඉවත් වන්න / ඇතුල් වන්න.
ඔයාට පාවිච්චි කරන්න පුළුවන්
docker run hello-world
ඔබට සූඩෝ නොමැතිව ඩොකර් ධාවනය කළ හැකිදැයි පරීක්ෂා කිරීමට.