Thuta Learning
ရှာဖွေရန်
BasicDevOps & Toolsintermediate

What is Docker?

စိတ်လျှော့ပါ။ ဒီခန်းကို စာအုပ်လိုမဟုတ်ဘဲ စကားပြောသလိုပဲ၊ နားလည်လွယ်အောင် ရှင်းပါမယ်။

Docker ဆိုတာ application တစ်ခုကို run လုပ်ဖို့လိုတဲ့ code, runtime, libraries, tools, settings တွေကို package တစ်ခုလိုစုပြီး container အဖြစ် run ပေးတဲ့ platform ဖြစ်ပါတယ်။ Container ထဲမှာ app အတွက်လိုအပ်တာတွေပါပြီးသားဖြစ်တဲ့အတွက် developer computer, testing server, production server တွေမှာ environment မတူလို့ error ဖြစ်တာကို လျော့ချပေးနိုင်ပါတယ်။

ဥပမာ Node.js app တစ်ခုမှာ Node version မတူလို့ error ဖြစ်တာ၊ PHP extension မရှိလို့ run မရတာ၊ database setup မတူလို့ bug တက်တာမျိုးတွေကို Docker နဲ့ပိုပြီးထိန်းချုပ်နိုင်ပါတယ်။

dockerfile
# Run a pre-built Nginx web server container
# -d means run in the background
# -p 8080:80 maps your computer's port 8080 to the container's port 80
docker run -d -p 8080:80 nginx

ဒီ command က Docker Hub မှာရှိတဲ့ official nginx image ကိုအသုံးပြုပြီး web server container တစ်ခု run လုပ်ပါတယ်။ -p 8080:80 ကြောင့် browser မှာ http://localhost:8080 ဖွင့်လိုက်ရင် container ထဲက Nginx server ကိုတွေ့ရပါမယ်။

You should see
Browser တွင် http://localhost:8080 ကိုဖွင့်ပါက Welcome to nginx! page ပေါ်လာမည်။

Info

8080 က host port ဖြစ်ပြီး သင့် computer ပေါ်က port ပါ။ 80 က container ထဲက Nginx default web port ပါ။ Port mapping ကိုပြောင်းချင်ရင် ဥပမာ -p 3000:80 လို့ရေးနိုင်ပါတယ်။

ဒီနေရာမှာ လူအများမှားတတ်တယ်

  • Docker Desktop မဖွင့်ထားဘဲ command run လုပ်ရင် Docker daemon မတွေ့ဘူးဆိုတဲ့ error ပေါ်နိုင်ပါတယ်။ အရင်ဆုံး Docker Desktop running ဖြစ်နေကြောင်းစစ်ပါ။