Docker配置本地鏡像與容器的存儲位置
使用find命令找到大于指定大小的文件:
find / -type f -size +10G
排除某個目錄
find / -path "/media/xww" -type f -size +10G
修改Docker本地鏡像與容器的存儲位置的方法
方法一、軟鏈接
默認情況下Docker的存放位置為:/var/lib/docker
可以通過下面命令查看具體位置:
sudo docker info | grep "Docker Root Dir"
解決這個問題,最直接的方法當然是掛載分區(qū)到這個目錄,但是我的數(shù)據(jù)盤還有其他東西,這肯定不好管理,所以采用修改鏡像和容器的存放路徑的方式達到目的。
這個方法里將通過軟連接來實現(xiàn)。
首先停掉Docker服務(wù):
systemctl restart docker 或者 service docker stop
然后移動整個/var/lib/docker目錄到目的路徑:
mv /var/lib/docker /root/data/docker ln -s /root/data/docker /var/lib/docker
這時候啟動Docker時發(fā)現(xiàn)存儲目錄依舊是/var/lib/docker,但是實際上是存儲在數(shù)據(jù)盤的,你可以在數(shù)據(jù)盤上看到容量變化。
方法二、可擴展邏輯卷
默認情況下docker的存放位置為:
/var/lib/docker
一般根下分區(qū)我們不會給太大。鏡像和容器越存越多一般我們有兩種解決方法
1、掛載大分區(qū)到/var/lib/docker:
一般選擇建立邏輯分區(qū)lvm,方便后期擴展集體。
a.建立新分區(qū),并格式化 PS: 以下操作建設(shè)你已經(jīng)有現(xiàn)成的卷組,直接可以劃邏輯卷。或者你可以自己創(chuàng)建邏輯卷,或者不適用邏輯卷直接使用分區(qū) lvcreate -L 300G lv_docker vg_home mkfs.ext4 /dev/vg_home/lv__docker b.掛載新分區(qū)到臨時掛載點 [plain] view plain copy mkdir /mnt/docker mount /dev/vg_home/lv_docker /mnt/docker/ c.停掉docker后拷貝/var/lib/docker下數(shù)據(jù)到臨時掛載點 [plain] view plain copy service docker stop cp -r /var/lib/docker/* /mtn/docker d.修改/var/lib/docker 為//var/lib/docker.bak,并創(chuàng)建/var/lib/docker [plain] view plain copy mv /var/lib/docker{,.bak} mkdir /var/lib/docker e.掛載新分區(qū)到/var/lib/docker,并設(shè)置開機自動掛載。 [plain] view plain copy mount /dev/vg_home/lv_docker /var/lib/docker vim /etc/fstab --- /dev/vg_home/lv_docker /docker_data ext4 defaults 0 0 ---- f.檢測docker是否可用,數(shù)據(jù)是否完整 [plain] view plain copy docker images docker ps -a g.確認無誤后卸載臨時掛載點,刪除/var/lib/docker.bak [plain] view plain copy umount /mnt/docker rm -rf /var/lib/docker.bak
方法三、修改鏡像和容器的存放路徑
指定鏡像和容器存放路徑的參數(shù)是–graph=/var/lib/docker,我們只需要修改配置文件指定啟動參數(shù)即可。
Docker 的配置文件可以設(shè)置大部分的后臺進程參數(shù),在各個操作系統(tǒng)中的存放位置不一致,在 Ubuntu 中的位置是:/etc/default/docker,在 CentOS 中的位置是:/etc/sysconfig/docker。
如果是 CentOS 則添加下面這行:
OPTIONS=--graph="/root/data/docker" --selinux-enabled -H fd://
如果是 Ubuntu 則添加下面這行(因為 Ubuntu 默認沒開啟 selinux):
OPTIONS=--graph="/root/data/docker" -H fd:// # 或者 DOCKER_OPTS="-g /root/data/docker"
最后重新啟動,Docker 的路徑就改成 /root/data/docker 了。
如果沒有生效,按如下操作
vim /etc/default/docker 添加配置信息 DOCKER_OPTS="--graph=/home/docker" 保存退出 service docker restart 發(fā)現(xiàn)配置并沒有生效 解決方案: mkdir -p /etc/systemd/system/docker.service.d cat /etc/systemd/system/docker.service.d/Using_Environment_File.conf 如果沒有該文件則自行創(chuàng)建,添加以下內(nèi)容 [Service] EnvironmentFile=-/etc/default/docker ExecStart= ExecStart=/usr/bin/docker daemon -H fd:// $DOCKER_OPTS 載入配置重啟服務(wù) systemctl daemon-reload service docker restart 查看配置是否生效
到此這篇關(guān)于Docker配置本地鏡像與容器的存儲位置的文章就介紹到這了,更多相關(guān)Docker配置本地鏡像與容器的存儲位置內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Docker跨主機網(wǎng)絡(luò)(overlay)的實現(xiàn)
這篇文章主要介紹了Docker跨主機網(wǎng)絡(luò)(overlay)的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2019-12-12Docker底層技術(shù)Namespace Cgroup應(yīng)用詳解
在本篇文章里小編給大家整理的是關(guān)于Docker底層技術(shù)Namespace Cgroup應(yīng)用的相關(guān)知識點,需要的朋友們學習下。2019-10-10Docker實現(xiàn)從零開始搭建SOLO個人博客的方法步驟
本文主要介紹了Docker實現(xiàn)從零開始搭建SOLO個人博客,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2021-11-11基于docker 搭建Prometheus+Grafana的過程詳解
這篇文章主要介紹了基于docker 搭建Prometheus+Grafana的過程詳解,本文通過圖文并茂的形式給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2021-03-03docker上快速搭建gitlab、gitlab-runer及實現(xiàn)CI/CD功能
這篇文章主要介紹了docker上快速搭建gitlab、gitlab-runer及實現(xiàn)CI/CD,本文給大家講解的非常詳細,包括docker上安裝gitlab的相關(guān)操作及配置root賬號密碼,需要的朋友可以參考下2022-04-04