1. 程式人生 > >docker更換檔案系統(Overlay2)

docker更換檔案系統(Overlay2)

docker 有時候會報

Either use `--storage-opt dm.thinpooldev` or use `--storage-opt dm.no_warn_on_loop_devices=true` to suppress this warning.

這就是檔案系統沒有用比較優秀的

# systemctl stop docker
# rm -rf /var/lib/docker //注意好像 images可能會被清空
編輯/etc/sysconfig/docker-storage
DOCKER_STORAGE_OPTIONS= -s overlay

有時候可能這時候還不能正常啟動 
編輯/etc/sysconfig/docker裡的OPTIONS後面,將selinux哪項給去掉就行了

systemctl start docker
docker info  就可以看到改變了


備註:
overlay有較高的核心版本要求哦  反正忘4.x以上升就對了 哈

2016-12-21:docker1.12.5 新增老的方式已經不行了  新的
找到任意一個可以給/usr/bin/dockerd 加引數的地方
比如:vi /usr/lib/systemd/system/docker.service
增加引數
ExecStart=/usr/bin/dockerd --storage-driver=overlay2

注意拼寫  反正我自己試了好多次 好多縮寫其實不成功 最後成功的是這個
然後重點是要
systemctl stop docker.service
rm -rf /var/lib/docker
也就是刪掉之前存在的映象等檔案的docker目錄 注意該目錄是可以換的哦
否則就算啟動也不會覆蓋之前的s
torage-driver systemctl daemon-reload;systemctl start docker.service

docker info |head
Containers: 0
Running: 0
Paused: 0
Stopped: 0
Images: 0
Server Version: 1.12.5
Storage Driver: overlay
Backing Filesystem: extfs
Logging Driver: json-file
Cgroup Driver: cgroupfs

成了

如果要把一個獨立的資料分割槽設定為docker資料目錄,需手工把docker原目錄的資料都移到新的儲存分割槽上去,然後以新的儲存分割槽掛載到/var/lib/docker目錄下。

fdisk /dev/sdb 
第一次按n回車 後面一路按照預設即可所以直接回車 最後按w回車結束
mkfs.xfs -f /dev/sdb1 
參考:http://www.jb51.net/LINUXjishu/248321.html

vi /etc/fstab

新增

/dev/sdb1 /var/lib/docker xfs  defaults  0  0

重啟

搞定