柚子快報激活碼778899分享:Docker學習筆記9
柚子快報激活碼778899分享:Docker學習筆記9
容器使用Docker Host做數(shù)據(jù)存儲:
容器來做數(shù)據(jù)的存儲。清除了容器,保存在容器的數(shù)據(jù)就會丟失,所以容器不適合做數(shù)據(jù)的持久化。
-v --volume list:? Bind Mount a volume 綁定掛載一個卷。
把數(shù)據(jù)保存到真實機上,就能做到持久化。
第一步:在容器主機上創(chuàng)建用于存儲目錄:
mkdir /opt/cvolume
第二步:運行容器并掛載上述目錄:
docker run -it -v /opt/cvolume:/data --name c102 centos:latest /bin/bash
1)-v 前面是容器主機的目錄,后面是容器里的目錄。
2)容器目錄/data是在運行容器的時候自動創(chuàng)建的,不需要預先在鏡像中創(chuàng)建該目錄。
第三步:在/opt/cvolume目錄中創(chuàng)建123.txt文件,那么使用docker attach c102命令進入到容器,然后在/data目錄下檢查,可以看到123.txt文件已經(jīng)存在。
-v選項,把容器的文件保存到本地,把真實機的目錄掛載到容器中。
案例:
運行在容器中的http服務,使用docker host的/web目錄中的網(wǎng)頁文件,并能夠在docker host上進行修改后,立刻生效。
第一步:
在宿主機上創(chuàng)建/web目錄,并添加網(wǎng)頁文件。
mkdir /web
echo "web" > /web/index.html
第二步:啟動容器對/web目錄進行掛載
docker run -it -p 8080:80 -v /web:/var/www/html centos:latest /bin/bash
# 在容器中
ls /var/www/html
第三步:啟動http服務
yum install -y httpd
httpd -k start
第四步:驗證:
# 在容器中
curl http://localhost
# 在容器主機中
curl http://localhost:8080
在工作中,解決MySQL數(shù)據(jù)目錄沒有正確映射到宿主機的問題。
備份數(shù)據(jù):mysqldump
停止mysql原來的容器
docker stop mysql
備份數(shù)據(jù)(數(shù)據(jù)目錄的拷貝)
docker cp
啟動mysql的新容器
docker run
刪除mysql舊容器(可選)
柚子快報激活碼778899分享:Docker學習筆記9
好文鏈接
本文內(nèi)容根據(jù)網(wǎng)絡資料整理,出于傳遞更多信息之目的,不代表金鑰匙跨境贊同其觀點和立場。
轉載請注明,如有侵權,聯(lián)系刪除。