Docker的鏡像存放目錄修改與遷移(Ubuntu)

1秽荞、查看docker和文件系統(tǒng)

Docker的鏡像以及一些數(shù)據(jù)都是在/var/lib/docker目錄下阀蒂,它占用的是Linux的系統(tǒng)分區(qū)驮捍,也就是下面的/dev/vda1,當(dāng)有多個(gè)鏡像時(shí)危虱,/dev/vda1的空間可能不足赫舒,我們可以把docker的數(shù)據(jù)掛載到數(shù)據(jù)盤悍及,例如:/dev/vdb目錄下。

[root@10-10-63-106 docker]# df -lhT
Filesystem     Type      Size  Used Avail Use% Mounted on
/dev/vda1      xfs        20G  3.8G   16G  20% /
devtmpfs       devtmpfs  916M     0  916M   0% /dev
tmpfs          tmpfs     921M     0  921M   0% /dev/shm
tmpfs          tmpfs     921M   43M  878M   5% /run
tmpfs          tmpfs     921M     0  921M   0% /sys/fs/cgroup
/dev/vdb       xfs       100G   11G   90G  11% /data

2接癌、備份fstab和遷移已有的文件

其中主要的步驟如下:

(1) 首先心赶,備份fstab文件 sudo cp /etc/fstab /etc/fstab.$(date +%Y-%m-%d)

(2) 停止docker, 用rsync同步/var/lib/docker到新位置.

   如果rsync沒有安裝缺猛,則使用apt install -y rsync 進(jìn)行安裝缨叫,停止docker ,service docker stop,在數(shù)據(jù)分區(qū)中建立要掛載的目錄,mkdir /data/docker 使用rsync工具同步荔燎,~~rsync -aXS /var/lib/docker/.  /data/docker/~~耻姥,這可能需要花費(fèi)的較長(zhǎng)的時(shí)間,取決于/var/lib/docker的大小有咨。

在使用overlay文件系統(tǒng)的Docker上面琐簇,會(huì)出現(xiàn)數(shù)據(jù)快速膨脹的問題。
解決辦法座享,使用下面的方法復(fù)制文件:
** rsync -avPHSX /var/lib/docker /new/partition/**
解釋:

  • -a婉商,檔案模式。
  • -v渣叛,顯示詳細(xì)信息丈秩。
  • -P,顯示進(jìn)度淳衙。
  • -H癣籽,處理Hardlink為Hardlink,關(guān)鍵滤祖!
  • -S筷狼,稀疏文件優(yōu)化處理。
  • -X匠童,保留所有屬性埂材。

3、修改fstab汤求,然后重新掛載

修改fstab 在該文件中把下面一行添加到fstab里俏险,將新位置掛載到 /var/lib/docker /data/docker /var/lib/docker none bind 0 0 文件的內(nèi)如如下:

[root@10-10-63-106 docker]# cat /etc/fstab 
#
# /etc/fstab
# Created by anaconda on Thu Jul 31 07:50:13 2014
#
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#
/dev/vda1                  /                       xfs     errors=remount-ro 0 1
/swapfile                none                    swap    defaults        0 0
/dev/vdb /data xfs defaults,noatime 0 0
/data/docker /var/lib/docker  none bind 0 0

(4)重新掛載 mount –a

(5)使用下面的命令檢查一下

df

/var/lib/docker/ Filesystem 1K-blocks Used Available Use%

Mounted on /dev/vdb 104806400 47204 104759196 1% /var/lib/docker

(6)進(jìn)入Container查看我們的空間

bash-4.1# df -lhT
Filesystem    Type    Size  Used Avail Use% Mounted on
rootfs      rootfs    9.8G  1.4G  7.9G  15% /
tmpfs        tmpfs    921M     0  921M   0% /dev
shm          tmpfs     64M     0   64M   0% /dev/shm
/dev/vdb       xfs    100G  2.1G   98G   3% /etc/resolv.conf
/dev/vdb       xfs    100G  2.1G   98G   3% /etc/hostname
/dev/vdb       xfs    100G  2.1G   98G   3% /etc/hosts
tmpfs        tmpfs    921M     0  921M   0% /run/secrets
tmpfs        tmpfs    921M     0  921M   0% /proc/kcore

沒有更改/var/lib/docker路徑之前的情況:

bash-4.1# df -lhT
Filesystem    Type    Size  Used Avail Use% Mounted on
rootfs      rootfs    9.8G  1.4G  7.9G  15% /
tmpfs        tmpfs    921M     0  921M   0% /dev
shm          tmpfs     64M     0   64M   0% /dev/shm
/dev/vda1      xfs     20G   13G  6.9G  66% /etc/resolv.conf
/dev/vda1      xfs     20G   13G  6.9G  66% /etc/hostname
/dev/vda1      xfs     20G   13G  6.9G  66% /etc/hosts
tmpfs        tmpfs    921M     0  921M   0% /run/secrets
tmpfs        tmpfs    921M     0  921M   0% /proc/kcore

宿主機(jī)中的分區(qū)大小信息:

[root@10-10-63-106 ~]# df -lhT
Filesystem     Type      Size  Used Avail Use% Mounted on
/dev/vda1      xfs        20G   13G  6.9G  65% /
devtmpfs       devtmpfs  916M     0  916M   0% /dev
tmpfs          tmpfs     921M     0  921M   0% /dev/shm
tmpfs          tmpfs     921M   89M  832M  10% /run
tmpfs          tmpfs     921M     0  921M   0% /sys/fs/cgroup
/dev/vdb       xfs       100G   33M  100G   1% /data

4严拒、總結(jié)一下,搞成個(gè)腳本來執(zhí)行

#備份fstab文件
sudo cp /etc/fstab /etc/fstab.$(date +%Y-%m-%d)

#停止docker
sudo service docker stop

#/data/docker/為目標(biāo)路徑竖独,根據(jù)機(jī)器情況設(shè)定裤唠。
export DOCKER_PATH=/data/docker/

#用rsync同步/var/lib/docker到新位置
rsync -avPHSX /var/lib/docker/.  $DOCKER_PATH

echo $DOCKER_PATH /var/lib/docker  none bind 0 0 >> /etc/fstab
mount –a
df -h

把上面的保存為腳本,修改里面的路徑莹痢,然后添加執(zhí)行權(quán)限种蘸,執(zhí)行即可。

然后重啟docker(sudo service docker start)竞膳,鏡像存儲(chǔ)就使用新的路徑了航瞭。

掛載新的文件目錄還可以使用軟連接 ln /var/lib/docker /targetpath/docker,或者使用Docker啟動(dòng)參數(shù)-g path來完成坦辟。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末刊侯,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子锉走,更是在濱河造成了極大的恐慌滨彻,老刑警劉巖,帶你破解...
    沈念sama閱讀 218,640評(píng)論 6 507
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件挪蹭,死亡現(xiàn)場(chǎng)離奇詭異疮绷,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)嚣潜,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,254評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門冬骚,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人懂算,你說我怎么就攤上這事只冻。” “怎么了计技?”我有些...
    開封第一講書人閱讀 165,011評(píng)論 0 355
  • 文/不壞的土叔 我叫張陵喜德,是天一觀的道長(zhǎng)。 經(jīng)常有香客問我垮媒,道長(zhǎng)舍悯,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,755評(píng)論 1 294
  • 正文 為了忘掉前任睡雇,我火速辦了婚禮萌衬,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘它抱。我一直安慰自己秕豫,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,774評(píng)論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著混移,像睡著了一般祠墅。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上歌径,一...
    開封第一講書人閱讀 51,610評(píng)論 1 305
  • 那天毁嗦,我揣著相機(jī)與錄音,去河邊找鬼回铛。 笑死狗准,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的勺届。 我是一名探鬼主播,決...
    沈念sama閱讀 40,352評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼娶耍,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼免姿!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起榕酒,我...
    開封第一講書人閱讀 39,257評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤胚膊,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后想鹰,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體紊婉,經(jīng)...
    沈念sama閱讀 45,717評(píng)論 1 315
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,894評(píng)論 3 336
  • 正文 我和宋清朗相戀三年辑舷,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了喻犁。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 40,021評(píng)論 1 350
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡何缓,死狀恐怖肢础,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情碌廓,我是刑警寧澤传轰,帶...
    沈念sama閱讀 35,735評(píng)論 5 346
  • 正文 年R本政府宣布,位于F島的核電站谷婆,受9級(jí)特大地震影響慨蛙,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜纪挎,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,354評(píng)論 3 330
  • 文/蒙蒙 一期贫、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧异袄,春花似錦唯灵、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,936評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽垢揩。三九已至,卻和暖如春敛瓷,著一層夾襖步出監(jiān)牢的瞬間叁巨,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,054評(píng)論 1 270
  • 我被黑心中介騙來泰國(guó)打工呐籽, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留锋勺,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 48,224評(píng)論 3 371
  • 正文 我出身青樓狡蝶,卻偏偏與公主長(zhǎng)得像庶橱,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子贪惹,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,974評(píng)論 2 355