I have a docker in docker(DinD) images with debian-11 bullseye. On my host machine when I ran the command docker info
# host machine
# docker info
Server:
Containers: 3
Running: 3
Paused: 0
Stopped: 0
Images: 27
Server Version: 20.10.22
Storage Driver: overlay2
Backing Filesystem: extfs
Supports d_type: true
Native Overlay Diff: true
userxattr: false
Logging Driver: json-file
Cgroup Driver: systemd
Cgroup Version: 2
Plugins:
Volume: local
Network: bridge host ipvlan macvlan null overlay
Log: awslogs fluentd gcplogs gelf journald json-file local logentries splunk syslog
...
...
Kernel Version: 5.15.0-56-generic
Operating System: Ubuntu 22.04.1 LTS
OSType: linux
Architecture: x86_64
But I ran docker info inside the DinD image.
# DinD machine
# docker info
Server:
Containers: 1
Running: 1
Paused: 0
Stopped: 0
Images: 1
Server Version: 20.10.5+dfsg1
Storage Driver: vfs
Logging Driver: json-file
Cgroup Driver: cgroupfs
Cgroup Version: 2
Plugins:
Volume: local
Network: bridge host ipvlan macvlan null overlay
Log: awslogs fluentd gcplogs gelf journald json-file local logentries splunk syslog
Swarm: inactive
Runtimes: io.containerd.runc.v2 io.containerd.runtime.v1.linux runc
...
...
Kernel Version: 5.15.0-56-generic
Operating System: Debian GNU/Linux 11 (bullseye)
OSType: linux
Architecture: x86_64
I am not sure why DinD container is using storage drive as vfs instead of overlay2.
Inside the DinD container. There are no setting for daemon.json
# Inside DinD container (debian-11)
root@d7f083938722:/# cat /etc/docker/daemon.json
{
"data-root": "/data/var/lib/docker",
"live-restore": true,
"log-driver": "json-file",
"init": true
}
While building dind docker images. I have this volume mount
Dockerfile
because my daemon.json (cat /var/lib/docker/daemon.json) is
But while running the docker image. I was mounting the host volume at wrong location inside the dind docker container
The correct run command should be
After fixing volume mount the dind container is using host system configuration which is
overlay2