root@ubuntu:/home/ubuntu# mount | grep overlay | grep docker | grep merged | grep 761dc1b5e9093b905d4d7e23b9c7a18af36874f265860095613ff83e148d8cf3 overlay on /var/lib/docker/overlay2/761dc1b5e9093b905d4d7e23b9c7a18af36874f265860095613ff83e148d8cf3/merged type overlay (rw,relatime,lowerdir=/var/lib/docker/overlay2/l/ORGFKK3IMOIFU4AZQKS3CYFZM3:/var/lib/docker/overlay2/l/NE3T6GEJZK46HVMUL27FGQDOYH:/var/lib/docker/overlay2/l/2WRKKP23NPW2ERHXFHJL57MO7D:/var/lib/docker/overlay2/l/HJZIRL54DSH6NZJJYMY5HENOZA:/var/lib/docker/overlay2/l/F6KA6O7GCJHTDFGIOM7EMH7IFR:/var/lib/docker/overlay2/l/T6LRFVAFIXJLSIZWQ25XTNXEK4,upperdir=/var/lib/docker/overlay2/761dc1b5e9093b905d4d7e23b9c7a18af36874f265860095613ff83e148d8cf3/diff,workdir=/var/lib/docker/overlay2/761dc1b5e9093b905d4d7e23b9c7a18af36874f265860095613ff83e148d8cf3/work,xino=off) root@ubuntu:/home/ubuntu# mount | grep overlay | grep kata | grep rootfs | grep 761dc1b5e9093b905d4d7e23b9c7a18af36874f265860095613ff83e148d8cf3 overlay on /run/kata-containers/shared/sandboxes/fa55c7478feb846f8ea41fe52cb13252afb0df1ee09b4cc7a1d58218ed4c782a/mounts/fa55c7478feb846f8ea41fe52cb13252afb0df1ee09b4cc7a1d58218ed4c782a/rootfs type overlay (rw,relatime,lowerdir=/var/lib/docker/overlay2/l/ORGFKK3IMOIFU4AZQKS3CYFZM3:/var/lib/docker/overlay2/l/NE3T6GEJZK46HVMUL27FGQDOYH:/var/lib/docker/overlay2/l/2WRKKP23NPW2ERHXFHJL57MO7D:/var/lib/docker/overlay2/l/HJZIRL54DSH6NZJJYMY5HENOZA:/var/lib/docker/overlay2/l/F6KA6O7GCJHTDFGIOM7EMH7IFR:/var/lib/docker/overlay2/l/T6LRFVAFIXJLSIZWQ25XTNXEK4,upperdir=/var/lib/docker/overlay2/761dc1b5e9093b905d4d7e23b9c7a18af36874f265860095613ff83e148d8cf3/diff,workdir=/var/lib/docker/overlay2/761dc1b5e9093b905d4d7e23b9c7a18af36874f265860095613ff83e148d8cf3/work,xino=off) overlay on /run/kata-containers/shared/sandboxes/fa55c7478feb846f8ea41fe52cb13252afb0df1ee09b4cc7a1d58218ed4c782a/shared/fa55c7478feb846f8ea41fe52cb13252afb0df1ee09b4cc7a1d58218ed4c782a/rootfs type overlay (rw,relatime,
lowerdir=/var/lib/docker/overlay2/l/ORGFKK3IMOIFU4AZQKS3CYFZM3:/var/lib/docker/overlay2/l/NE3T6GEJZK46HVMUL27FGQDOYH:/var/lib/docker/overlay2/l/2WRKKP23NPW2ERHXFHJL57MO7D:/var/lib/docker/overlay2/l/HJZIRL54DSH6NZJJYMY5HENOZA:/var/lib/docker/overlay2/l/F6KA6O7GCJHTDFGIOM7EMH7IFR:/var/lib/docker/overlay2/l/T6LRFVAFIXJLSIZWQ25XTNXEK4,
upperdir=/var/lib/docker/overlay2/761dc1b5e9093b905d4d7e23b9c7a18af36874f265860095613ff83e148d8cf3/diff,
workdir=/var/lib/docker/overlay2/761dc1b5e9093b905d4d7e23b9c7a18af36874f265860095613ff83e148d8cf3/work,xino=off) root@ubuntu:/home/ubuntu#
bindMountContainerRootfs: 将/var/lib/docker/overlay2/container_id/merge 通过mount bind挂载到/run/kata-containers/shared/sandboxes/sandboxId/shared/containerId/rootfs
func bindMountContainerRootfs(ctx context.Context, sharedDir, sandboxID, cID, cRootFs string, readonly bool) error { span, _ := trace(ctx, "bindMountContainerRootfs") defer span.Finish() rootfsDest := filepath.Join(sharedDir, sandboxID, cID, rootfsDir) return bindMount(ctx, cRootFs, rootfsDest, readonly) }
root@ubuntu:/home/ubuntu# mount | grep overlay | grep docker overlay on /var/lib/docker/overlay2/761dc1b5e9093b905d4d7e23b9c7a18af36874f265860095613ff83e148d8cf3/merged type overlay (rw,relatime,lowerdir=/var/lib/docker/overlay2/l/ORGFKK3IMOIFU4AZQKS3CYFZM3:/var/lib/docker/overlay2/l/NE3T6GEJZK46HVMUL27FGQDOYH:/var/lib/docker/overlay2/l/2WRKKP23NPW2ERHXFHJL57MO7D:/var/lib/docker/overlay2/l/HJZIRL54DSH6NZJJYMY5HENOZA:/var/lib/docker/overlay2/l/F6KA6O7GCJHTDFGIOM7EMH7IFR:/var/lib/docker/overlay2/l/T6LRFVAFIXJLSIZWQ25XTNXEK4,upperdir=/var/lib/docker/overlay2/761dc1b5e9093b905d4d7e23b9c7a18af36874f265860095613ff83e148d8cf3/diff,workdir=/var/lib/docker/overlay2/761dc1b5e9093b905d4d7e23b9c7a18af36874f265860095613ff83e148d8cf3/work,xino=off) overlay on /run/kata-containers/shared/sandboxes/fa55c7478feb846f8ea41fe52cb13252afb0df1ee09b4cc7a1d58218ed4c782a/mounts/fa55c7478feb846f8ea41fe52cb13252afb0df1ee09b4cc7a1d58218ed4c782a/rootfs type overlay (rw,relatime,lowerdir=/var/lib/docker/overlay2/l/ORGFKK3IMOIFU4AZQKS3CYFZM3:/var/lib/docker/overlay2/l/NE3T6GEJZK46HVMUL27FGQDOYH:/var/lib/docker/overlay2/l/2WRKKP23NPW2ERHXFHJL57MO7D:/var/lib/docker/overlay2/l/HJZIRL54DSH6NZJJYMY5HENOZA:/var/lib/docker/overlay2/l/F6KA6O7GCJHTDFGIOM7EMH7IFR:/var/lib/docker/overlay2/l/T6LRFVAFIXJLSIZWQ25XTNXEK4,upperdir=/var/lib/docker/overlay2/761dc1b5e9093b905d4d7e23b9c7a18af36874f265860095613ff83e148d8cf3/diff,workdir=/var/lib/docker/overlay2/761dc1b5e9093b905d4d7e23b9c7a18af36874f265860095613ff83e148d8cf3/work,xino=off) overlay on /run/kata-containers/shared/sandboxes/fa55c7478feb846f8ea41fe52cb13252afb0df1ee09b4cc7a1d58218ed4c782a/shared/fa55c7478feb846f8ea41fe52cb13252afb0df1ee09b4cc7a1d58218ed4c782a/rootfs type overlay (rw,relatime,lowerdir=/var/lib/docker/overlay2/l/ORGFKK3IMOIFU4AZQKS3CYFZM3:/var/lib/docker/overlay2/l/NE3T6GEJZK46HVMUL27FGQDOYH:/var/lib/docker/overlay2/l/2WRKKP23NPW2ERHXFHJL57MO7D:/var/lib/docker/overlay2/l/HJZIRL54DSH6NZJJYMY5HENOZA:/var/lib/docker/overlay2/l/F6KA6O7GCJHTDFGIOM7EMH7IFR:/var/lib/docker/overlay2/l/T6LRFVAFIXJLSIZWQ25XTNXEK4,upperdir=/var/lib/docker/overlay2/761dc1b5e9093b905d4d7e23b9c7a18af36874f265860095613ff83e148d8cf3/diff,workdir=/var/lib/docker/overlay2/761dc1b5e9093b905d4d7e23b9c7a18af36874f265860095613ff83e148d8cf3/work,xino=off) overlay on /var/lib/docker/overlay2/1c4476eff951c58a04fd1afff227d0249563966f771c579fa4a95600d8e0e691/merged type overlay (rw,relatime,lowerdir=/var/lib/docker/overlay2/l/5Z2FKD6WOP5MZ4XKMVS44QDGOS:/var/lib/docker/overlay2/l/NE3T6GEJZK46HVMUL27FGQDOYH:/var/lib/docker/overlay2/l/2WRKKP23NPW2ERHXFHJL57MO7D:/var/lib/docker/overlay2/l/HJZIRL54DSH6NZJJYMY5HENOZA:/var/lib/docker/overlay2/l/F6KA6O7GCJHTDFGIOM7EMH7IFR:/var/lib/docker/overlay2/l/T6LRFVAFIXJLSIZWQ25XTNXEK4,upperdir=/var/lib/docker/overlay2/1c4476eff951c58a04fd1afff227d0249563966f771c579fa4a95600d8e0e691/diff,workdir=/var/lib/docker/overlay2/1c4476eff951c58a04fd1afff227d0249563966f771c579fa4a95600d8e0e691/work,xino=off) overlay on /run/kata-containers/shared/sandboxes/ef4b70596e0b829af5fd9f14343f2c92a8da3d0d22ea1f23e83b14384fa4f1cc/mounts/ef4b70596e0b829af5fd9f14343f2c92a8da3d0d22ea1f23e83b14384fa4f1cc/rootfs type overlay (rw,relatime,lowerdir=/var/lib/docker/overlay2/l/5Z2FKD6WOP5MZ4XKMVS44QDGOS:/var/lib/docker/overlay2/l/NE3T6GEJZK46HVMUL27FGQDOYH:/var/lib/docker/overlay2/l/2WRKKP23NPW2ERHXFHJL57MO7D:/var/lib/docker/overlay2/l/HJZIRL54DSH6NZJJYMY5HENOZA:/var/lib/docker/overlay2/l/F6KA6O7GCJHTDFGIOM7EMH7IFR:/var/lib/docker/overlay2/l/T6LRFVAFIXJLSIZWQ25XTNXEK4,upperdir=/var/lib/docker/overlay2/1c4476eff951c58a04fd1afff227d0249563966f771c579fa4a95600d8e0e691/diff,workdir=/var/lib/docker/overlay2/1c4476eff951c58a04fd1afff227d0249563966f771c579fa4a95600d8e0e691/work,xino=off) overlay on /run/kata-containers/shared/sandboxes/ef4b70596e0b829af5fd9f14343f2c92a8da3d0d22ea1f23e83b14384fa4f1cc/shared/ef4b70596e0b829af5fd9f14343f2c92a8da3d0d22ea1f23e83b14384fa4f1cc/rootfs type overlay (rw,relatime,lowerdir=/var/lib/docker/overlay2/l/5Z2FKD6WOP5MZ4XKMVS44QDGOS:/var/lib/docker/overlay2/l/NE3T6GEJZK46HVMUL27FGQDOYH:/var/lib/docker/overlay2/l/2WRKKP23NPW2ERHXFHJL57MO7D:/var/lib/docker/overlay2/l/HJZIRL54DSH6NZJJYMY5HENOZA:/var/lib/docker/overlay2/l/F6KA6O7GCJHTDFGIOM7EMH7IFR:/var/lib/docker/overlay2/l/T6LRFVAFIXJLSIZWQ25XTNXEK4,upperdir=/var/lib/docker/overlay2/1c4476eff951c58a04fd1afff227d0249563966f771c579fa4a95600d8e0e691/diff,workdir=/var/lib/docker/overlay2/1c4476eff951c58a04fd1afff227d0249563966f771c579fa4a95600d8e0e691/work,xino=off) root@ubuntu:/home/ubuntu# ls containerddemo dirA dirB dirC mysock nfsroot overlay qemu.sh qemu.sh.bak server.py soft_s stat.sh test txt v1.18 work root@ubuntu:/home/ubuntu# mount | grep dirA overlay on /home/ubuntu/test type overlay (rw,relatime,lowerdir=dirA:dirB,upperdir=dirC,workdir=work,xino=off) overlay on /root/rootfs/mnt_test type overlay (rw,relatime,lowerdir=dirA:dirB,upperdir=dirC,workdir=work,xino=off) root@ubuntu:/home/ubuntu# umount /root/rootfs/mnt_test root@ubuntu:/home/ubuntu# mount | grep dirA overlay on /home/ubuntu/test type overlay (rw,relatime,lowerdir=dirA:dirB,upperdir=dirC,workdir=work,xino=off) root@ubuntu:/home/ubuntu# mount /home/ubuntu/test /root/rootfs/mnt_test mount: /root/rootfs/mnt_test: /home/ubuntu/test is not a block device. root@ubuntu:/home/ubuntu# mount --bind /home/ubuntu/test /root/rootfs/mnt_test root@ubuntu:/home/ubuntu# mount | grep dirA overlay on /home/ubuntu/test type overlay (rw,relatime,lowerdir=dirA:dirB,upperdir=dirC,workdir=work,xino=off) overlay on /root/rootfs/mnt_test type overlay (rw,relatime,lowerdir=dirA:dirB,upperdir=dirC,workdir=work,xino=off) root@ubuntu:/home/ubuntu#