နားလည်ထားရမယ့် အချက်
Docker image သုံးခြင်းက Windows၊ macOS နှင့် Linux ပေါ်မှာ လေ့ကျင့်ခန်း environment တူညီစေပါတယ်။ Container ဖျက်သွားလည်း data မပျောက်စေရန် named volume သုံးရပြီး password ကို project source file ထဲ hardcode မထားသင့်ပါဘူး။ Production deployment ကတော့ backup၊ encryption၊ high availability နှင့် patching ပါလိုအပ်လို့ ဒီ local setup ထက်ပိုများပါတယ်။
လက်တွေ့ scenario နဲ့ ချိတ်ကြည့်မယ်
`postgres:18` image ကို run ပြီး `tutorial_platform` database ကို အစကတည်းကဖန်တီးမယ်။ `pgdata` volume က database files ကို container lifecycle ပြင်ပမှာသိမ်းထားပါတယ်။ Container ready ဖြစ်မဖြစ် `pg_isready` ဖြင့်စစ်နိုင်ပါတယ်။
အတူတူ စမ်းရေးကြည့်မယ်
docker volume create pgdata
docker run --name pg-tutorial \
-e POSTGRES_PASSWORD=learnpg \
-e POSTGRES_DB=tutorial_platform \
-p 127.0.0.1:5432:5432 \
-v pgdata:/var/lib/postgresql/data \
-d postgres:18
docker exec pg-tutorial pg_isready -U postgres`accepting connections` ဟု ပြပြီး PostgreSQL server အဆင်သင့်ဖြစ်မည်။၅ မိနစ် စမ်းကြည့်
Container ကို stop/start ပြန်လုပ်ပြီး database data ဆက်ရှိမရှိ volume persistence ကိုစစ်ပါ။
သတိလေးတစ်ချက်
နမူနာ password ကို production မှာမသုံးပါနှင့်။ Shell history၊ `.env` commit နှင့် public port exposure ကိုပါ သတိထားပါ။
PostgreSQL — Getting Started — PostgreSQL Global Development Group