Ubuntu පරිසරයෙහි Docker ඩ්රයිවර් භාවිතා කරමින් Minikube ක්ලස්ටරයක් සකස් කිරීම, Docker තුළම Kubernetes පරිසරයක් ලබා දෙන නව පියවරක් වන අතර, Kind වැනි වෙනත් “Kubernetes in Docker” විසඳුම් වලට වඩා අතිරේක ඇඩොනස් සමඟ සම්පූර්ණ ක්ලස්ටරයක් වැනි හැඟීමක් ලබා දෙයි.
පළමුව Docker ස්ථාපනය කරගැනීම අවශ්ය. sudo apt-get install -y docker.io කමාන්ඩ් එකෙන් Docker ඉන්ස්ටෝල් කර, පරිශීලක ගොනු docker කණ්ඩායමට එක් කිරීමෙන් පසු Docker සක්රිය වේ. ඊළඟට Minikube බයිනරි එක ඩවුන්ලෝඩ් කර sudo install minikube /usr/local/bin/minikube මගින් පද්ධතියේ ගලබන තැනට පිහිටුවන්න.
Minikube ආරම්භ කිරීමේදී minikube start --driver=docker ලෙස ඩ්රයිවර් Docker ලෙස සකස් කරමු. මෙය පසුතැවෙන විට minikube config set driver docker කමාන්ඩ් එකෙන් පෙරනිමි සැකසීම ලෙස තබා ගත හැක. අවශ්ය නම් CPU, RAM, Disk වැනි සම්පත් --cpus=4 --memory=8g --disk-size=40g ලෙස සකස් කර වැඩි බර වැඩ සඳහා සුදුසු පරිසරයක් සකස් කරගත හැක.
Minikube එකේ විශේෂත්වය එහි ඇඩොනස් වලින් වේ. minikube addons list මගින් ලැයිස්තුව බලන්න, පසුතැවෙන minikube addons enable ingress, minikube addons enable metrics-server සහ minikube addons enable dashboard වැනි ඇඩොනස් සක්රිය කිරීමෙන් NGINX Ingress, Metrics Server, Dashboard වැනි නිවැරදි මෙවලම් තත්කාලිකව භාවිතා කළ හැක. Registry ඇඩොනස් සක්රිය කරගතහොත් minikube addons enable registry මගින් පූෂ් පද්ධතියක්ද ලැබේ.
Docker‑env කුමාරකය Minikube තුළ Docker daemon එකට සම්බන්ධ වීමට පහසුකම සලසයි. eval $(minikube docker-env) කමාන්ඩ් එක ක්රියාත්මක කිරීමෙන් ඔබේ ටර්මිනල් Docker CLI එක Minikube Docker daemon වෙත මාරු වේ. ඉන්පසු docker build -t myapp:dev . ලෙස ඉමেজ් සෑදීමෙන් ඒම ඉමेज් ක්ලස්ටරයට ස්වයංක්රීයව පෙනේ, imagePullPolicy: IfNotPresent සැකසීමෙන් රෙජිස්ට්රියෙන් පූෂ් නොකර පවා භාවිතා කළ හැක. අවසන් වූ පසු eval $(minikube docker-env -u) මඟින් Docker CLI එක නැවත host Docker daemon වෙත යළි පත් කර ගත හැක.
ශ්රී ලංකාවට ඇති වැදගත්කම
ශ්රී ලංකාවේ සිසුන්, නවක සංවර්ධකයන් සහ තාක්ෂණික ව්යාපාර සඳහා Minikube Docker driver එක ප්රයෝජනවත් වේ. ප්රථමයෙන්, අඩු වියදමින් දේශීය පරිසරයක් තුළ Kubernetes ක්ලස්ටරයක් පවත්වාගෙන යාමෙන් Cloud සෙවාවලට ගාස්තු අඩු කරගත හැක. දෙවනුව, Ingress, Metrics Server, Dashboard වැනි ඇඩොනස් සමඟ පූර්ණ පරිසරයක් ලැබීම නිසා කණ්ඩායම්වලට CI/CD, මයික්රො සේවා, මොනිටරින් වැනි නවතම DevOps ක්රමවේදයන් ඉගෙන ගැනීමට සහ පරීක්ෂා කිරීමට ඉඩ සලසයි. තෙවනුව, Docker‑env කුමාරකය භාවිතයෙන් ඉමೇಜ් පූෂ් කිරීමේ අවශ්යතාවය නැති වීම, දේශීය නෙට්වර්ක් පරිසරයේ වේගවත් අත්දැකීම් ලබා දී, නිෂ්පාදන-සමාන පරිසරයක් නිර්මාණය කරයි.
අවසානයේ, Minikube ක්ලස්ටරය නතර කිරීමට minikube stop සහ පූර්ණයෙන් ම මකා දැමීමට minikube delete කමාන්ඩ් භාවිතා කළ හැක. අඩු සම්පත් හේතුවෙන් Ubuntu node එකේ systemd cgroup driver නොගැලපීම වැනි ගැටළු ඇති වුවහොත්, සාමාන්ය Kubernetes troubleshooting ක්රමවේදයන් (kubectl describe pod, kubectl logs) භාවිතා කර ප්රශ්න විසඳිය හැක.
ඔබේ දේශීය සංවර්ධන පරිසරය Minikube Docker driver සමඟ තවත් ශක්තිමත් කරගනිමින්, Kubernetes අධ්යයනයේ නව මට්ටමකට පියවර තැබීමට මේක හොඳ අවස්ථාවක් වේ.