设为首页 收藏本站
查看: 467|回复: 0

[经验分享] Linux更改Docker运行根目录

[复制链接]

尚未签到

发表于 2018-5-29 06:57:32 | 显示全部楼层 |阅读模式
  http://www.xitongzhijia.net/xtjc/20150527/49414.html
  http://zhidao.baidu.com/link?url=GBm9VCW4CqL0lpDbc6gcZJUF-KNdZXJXCtsZUHoyIetAlHeD5Fxsy7fRZocNPrL-A3LKGOgycPlHc0e_iYj4YAsHp7QLrE19q56LuG_NKJm
  -g, --graph=“/var/lib/docker” 设置Docker运行时根目录
  使用 --graph 参数:docker --graph=/opt/docker -d,会自动生成/opt/docker目录(0700),并在该目录下创建 docker 相关文件
  原来的镜像和容器都找不到了,因为路径改了(原来的镜像是在/var/lib/docker/devicemapper/devicemapper/{data,metadata})
  Docker 的配置文件可以设置大部分的后台进程参数,在各个操作系统中的存放位置不一致
  在 ubuntu 中的位置是:/etc/default/docker
  在 centos 中的位置是:/etc/sysconfig/docker
  我使用 CentOS 7,所以只需要更改 vim /etc/sysconfig/docker 成
  OPTIONS=--graph=“/home/lib/docker” --selinux-enabled -H fd://
  然后 service docker start 重新启动 Docker 的路径就改成 /home/lib/docker 了
  上面的就是就是解决Docker存放位置的空间太小,导致Docker运行缓慢的方法了,有遇到这个问题的用户,就用这种方法进行解决吧。
  +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
  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

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-482327-1-1.html 上篇帖子: docker能干什么 下篇帖子: docker之安装部署
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表