Docker ගැන ඇත්තටම දැනගන්න කැමති ඔබට, එය මැජික් කුමාරියක් නොව, ලිනක්ස් පද්ධතියේ පදනමක් බව පෙනේ. බොහෝ අය Docker නියමයෙන් භාවිතා කරද්දී අතුරුදන් වූ විධාන හෝ පණිවුඩයන් හේතුවෙන් ගැටළු ගනී. මේ ලිපියෙන් ඒ ගැටළු අතහැර, Docker කෙරෙහි නව දෘශ්යයක් ලබා දෙනවා.
Docker කුමක්ද? Docker යනු නව වර්චුවල් යන්ත්රයක් නොවේ. එය ලිනක්ස් ක්රියාවලියක් වගේම, නේමස්පේස්, cgroups වැනි ලිනක්ස් පදනම් අංගවලින් ගොඩනැගුණු කන්ටේනරයක් පමණයි. ඒ නිසා කන්ටේනරයක් වෙනත් ෆයිල් සিস্টම්, ජාලය, ප්රොසෙස් ගසක් දකිනවා, ඒ සියල්ල ලිනක්ස් නේමස්පේස් නිසාය.
Docker භාවිතා කරන විට වැදගත් මූලික විධාන කිහිපයක් ඉගෙන ගත යුතුයි. ඒවා පහත පරිදි:
- docker build -t myapp . – ඇප් එක බිල්ඩ් කරයි.
- docker run -p 3000:3000 myapp – පෝර්ට් මැප් කරමින් ක්රියාත්මක කරයි.
- docker ps – ක්රියාත්මක කන්ටේනර පෙන්වයි.
- docker logs -f myapp – ලොග්ස් රියල් ටයිම් බලයි.
- docker exec -it myapp /bin/bash – කන්ටේනර තුළ bash shell එකට පිවිසෙයි.
- docker system prune – නොවැඩෙන රිසෝර්ස් ඉවත් කරයි.
මෙම විධාන මඟින් ඔබට කන්ටේනරයක් සකස් කර, එය පරීක්ෂා කර, ගැටළු හඳුනා ගත හැක. Docker ඉගෙනීමේ සැබෑ වටිනාකම, Kubernetes වැනි වැඩි පරිමාණ ඔට්ටු පද්ධති වෙත පියවර ගැනීමේ සූදානමයි. Docker කන්ටේනර, පෝඩ්, නෝඩ් වැනි සංකල්පයන් Kubernetes සමඟ සෘජුවම සම්බන්ධ වේ.
ශ්රී ලංකාවට ඇති වැදගත්කම
ශ්රී ලාංකීය තාක්ෂණ ශිෂ්යයින්, සංවර්ධකයින් සහ ව්යාපාරිකයින් Docker ඉගෙනීමෙන් ලාභ ගත හැක:
- ලොකු පරිමාණ සර්වර් පරිසරයක් නොගැලපී, කන්ටේනර මත පදනම් වූ මයික්රො සේවා ඉක්මනින් තැනීමට හැකියාව.
- කොඩ් බේස් එකම පරිසරයක රඳවා, සංවර්ධකයන් අතර ගැටළු අඩු කිරීම.
- කොස්ට් කම්පන අඩු කරමින්, Cloud පදනම් වූ සේවා (AWS, Azure, GCP) සමඟ ඉක්මන් එකතු කිරීම.
- දෙවැනි පාර්ශ්ව DevOps කාර්ය මණ්ඩලයට Docker සහ Kubernetes දැනුම අත්යවශ්ය, එය රැකියා අවස්ථා වැඩි කරයි.
Docker මූලික කරුණු පිළිබඳ ඔබගේ හැකියාව වර්ධනය කරගන්නා විට, ශ්රී ලංකාවේ තාක්ෂණික පරිසරය වඩාත් සුරැකුම්කාරී, නවෝත්පාදනශීලී හා ගෝලීය සපයන්නන් සමඟ තරඟකාරී වෙයි.
අවසානයේ, Docker කුමන මැජික්මය නැතිව, ලිනක්ස් පද්ධතියේ පදනමක් බව තේරුම් ගන්නා විට, ඔබේ සංවර්ධන ගමන අලුත් මට්ටමකට පත්වේ. ඉදිරියට Kubernetes, CI/CD වැනි උසස් තාක්ෂණයන් අත්හදා බැලීමට මේ මූලිකය මග පෙන්වයි.