大家好,今天来介绍修改docker镜像存放位置(docker修改默认镜像存放地址)的问题,以下是渲大师小编对此问题的归纳和整理,感兴趣的来一起看看吧!
如何修改 Docker 的镜像存储位置
方案1, 使用参数-g 来修改 Docker 的镜像存储文件夹.
修改方法如下:
在 Ubuntu/Debian 系统下:
编辑 /etc/default/docker 文件, 添加拍启滚-g 参数的设置, 如下:
DOCKER_OPTS="-dns 8.8.8.8 -dns 8.8.4.4 -g /mnt"
在 Fedora/Centos 系统下:
编辑 /etc/sysconfig/docker 文件, 添加-g 参数的设置, 如下:
other_args="-g /mnt"
重启 Docker 服旁裤务, 问题就解袭余决了.
CentOS7修改Docker容器和镜像默认存储位置
本文被帮助文档:
通常,当你开始使用docker时,我们并不太关心Docker 用于存储镜像和容器的默认目录。当使用Docker进行更多实验时,Docker开始占用大量的空间时,你不得不按下紧急按钮。所以现在是时候把故障排除放在如何改变docker的默认存储位置了
在试图改变Docker的默认存储位置时,我们必须知道一些重要的信息。
docker 当前使用的默认存储位置
docker 当前使用的存储驱动程序
镜像毁和和容器要存放的新存储空间
Docker 默认的位置在/var/lib/docker,当前所有的镜像、容器都存储在这儿。如果你有任何在运行的容器,停止这些容器,并确保没有容器在运行,然后运烂余含行以下命令,确定当前Docker使用的存储驱动饥笑。
注:此处需要注意docker的两个信息:
注意:
注:
查看==Docker Root Dir: /mnt/docker==信息可看到,docker服务存储位置已修改
本地的镜像文件都存放在哪里
于Docker相关的本地资源存放在/var/lib/docker/目录下,其中container目录存放容器信息,graph目录存放镜像信息,aufs目录下存放具体的镜像底层文件。我推荐你去码岩看看时歼悔速云,他们是一家全栈云原生技术服务提供商,提供云原生应用及数据平台产品,其中涵盖容器云PaaS、DevOps、微服务治理、服务网格、API网关等。大家可以去体迟改御验一下。 如果我的回答能够对您有帮助的话,求给大大的赞。
怎么修改docker images的存储目录
Docker的镜像以及一些数据都是在/var/lib/docker目录下,它占用的是Linux的系雹锋顷统分区,也就是下面的/dev/vda1,当有多个镜像时,/dev/vda1的空间基宏可能不足,我们可以把docker的数据挂载到数据盘,例如:/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
其中主要的步骤如下:
(1) 首先,备份fstab文件
sudo cp /etc/fstab /etc/fstab.$(date +%Y-%m-%d)
(2) 停止源陆docker, 用rsync同步/var/lib/docker到新位置.
如果rsync没有安装,则使用yum -y intall rsync 进行安装,停止docker ,service docker stop,在数据分区中建立要挂载的目录,mkdir /data/docker 使用rsync工具同步,rsync -aXS /var/lib/docker/. /data/docker/,这可能需要花费的较长的时间,取决于/var/lib/docker的大小,
(3) 修改fstab
在该文件中把下面一行添加到fstab里,将新位置挂载到 /var/lib/docker
/data/docker /var/lib/docker none bind 0 0
文件的内如如下:
[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)进入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
宿主机中的分区大小信息:
[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
怎么修改docker镜像默认位置
docker的镜像默认存放位置是 / var / lib / docker 下,要把这个挂到数据盘下本身不是什么难事孙哪,不过要平滑移动就麻烦了。
于是先去分区,挂载。我把数据盘挂载到了 / data 下,然后开始研究......
# df -lhT
Filesystem Type Size Used Avail Use% Mounted on
/dev/sda1 ext4 29G 2.0G 26G 8% /
none tmpfs 4.0K 0 4.0K 0% /sys/fs/cgroup
udev devtmpfs 834M 12K 834M 1% /dev
tmpfs tmpfs 168M 428K 168M 1% /run
none tmpfs 5.0M 0 5.0M 0% /run/lock
none tmpfs 839M 0 839M 0% /run/shm
none tmpfs 100M 0 100M 0% /run/user
none tmpfs 64K 0 64K 0% /etc/network/interfaces.dynamic.d
/dev/sdb1 ext4 69G 52M 66G 1% /mnt
/dev/sdc1 ext4 1007G 156M 956G 1% /data
备份&文件同步
首先誉配,备份 fstab 文件,文件位于 / etc / fstab
Shell
sudo cp /etc/fstab /etc/fstab.$(date +%Y-%m-%d)
sudo cp/etc/fstab/etc/fstab.$(date+%Y-%m-%d)
关闭 docker 服务,用 rsync 同步 / var / lib / docker 到新位置.
Shell
yum -y intall rsync
service docker stop
mkdir /data/docker
rsync -aXS /var/lib/docker/. /data/docker/
yum-yintallrsync
service dockerstop
mkdir/data/docker
rsync-aXS/var/lib/docker/. /data/docker/
这可能需要花费的较长的时间,取决于/var/lib/docker的大小,我用了10分钟左右才同步好。这个时间对于已经装了几个镜像的机子来说可能更慢,所以去打一把联盟吧~
修改fstab & 重新挂载
在该文件中把下面一行添加到 fstab 里,将新位置挂载到 / var / lib / docker
Vim
/data/docker /var/lib/docker none bind 0 0
/data/docker/则虚码var/lib/docker nonebind00
然后重新挂载
Shell
mount –a
mount–a
完成
检查一下,确定没啥问题
Shell
df /var/lib/docker/
df/var/lib/docker/
Filesystem Size Used Avail Use% Mounted on/data/docker 1007G 156M 956G 1% /var/lib/docker
OK,大功告成
本文地址:https://gpu.xuandashi.com/73982.html,转载请说明来源于:渲大师
声明:本站部分内容来自网络,如无特殊说明或标注,均为本站原创发布。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。分享目的仅供大家学习与参考,不代表本站立场!