AUFS是union filesystem,在较早的Docker for Ubuntu,或者是早于Stretch的Debian版本,aufs是默认的管理image与layer的storage driver。如果Linux kernel是4.0+,同时使用Docker CE,则考虑使用overlay2.
前提
对于Docker CE来说,AUFS在Ubuntu,以及早于Stretch的Debian中可以使用。
对于Docker EE来说,AUFS只能在Ubuntu使用。
如果使用Ubuntu,需要安装额外的包,以将AUFS module添加到kernel。如果不安装这些包,则在Ubuntu 14.04可以使用devicemapper;在Ubuntu 16.04+,则可以使用overlay2.
AUFS不能使用的backing filesystems有aufs,btrfs,ecryptfs。这意味着,/var/lib/docker/aufs
不能是上述文件系统类型。
配置Docker
如果,AUFS driver在docker启动时已经加载到kernel,同时,没有其他的storage driver配置,则docker默认使用aufs。
验证kernel是否支持AUFS
$ grep aufs /proc/filesystems
nodev aufs
查看Docker使用的storage driver
$ docker info
<truncated output>
Storage Driver: aufs
Root Dir: /var/lib/docker/aufs
Backing Filesystem: extfs
Dirs: 0
Dirperm1 Supported: true
<truncated output>
如果需要使用其他的storage driver,或者AUFS并不在kernel,可以查看/etc/docker/daemon.json
,或者是查看docker启动的标识--storage-driver
ps auxw | grep dockerd
工作原理