Container များသည် ယာယီသဘောရှိပါတယ်။ Container ကိုဖျက်လိုက်ရင် container filesystem ထဲက data များပါပျောက်နိုင်ပါတယ်။ Database data, uploaded files, config files, development source code တွေကို container အပြင်ဘက်မှာသိမ်းချင်ရင် Volumes သို့မဟုတ် bind mounts ကိုသုံးရပါတယ်။
dockerfile
# Create a named volume
docker volume create app-data
# Mount the named volume into a container
docker run --name data-demo -v app-data:/app/data alpine sh -c "echo saved > /app/data/message.txt"
# Read the saved file with a new container
docker run --rm -v app-data:/app/data alpine cat /app/data/message.txtapp-data ဆိုတဲ့ named volume ကိုဖန်တီးပြီး container ထဲက /app/data နေရာမှာချိတ်ထားပါတယ်။ Container အသစ်နဲ့ဖတ်ကြည့်တဲ့အခါ file ကရှိနေသေးတာကိုမြင်ရပါမယ်။
You should see
Terminal တွင် saved ဟုပေါ်လာပါမယ်။ Container တစ်ခုဖျက်ပြီး နောက် container တစ်ခုနဲ့ဖတ်တာတောင် data ကျန်နေကြောင်းပြပါတယ်။Info
Development မှာ source code live update လုပ်ချင်ရင် bind mount -v ./src:/app/src ကိုသုံးတတ်ပါတယ်။ Database data မပျောက်စေချင်ရင် named volume သုံးတာပိုသင့်ပါတယ်။