Kubernetes

docker 基于 overlayFS 文件系统原理

docker 基于 overlayFS 文件系统原理

# docker 容器,默认基于 overlayFS 的文件系统原理演示

mkdir lower upper merged work
echo "I'm from lower" > lower/mylower.txt
echo "I'm from upper" > upper/myupper.txt
echo "I'm from lower" > lower/myboth.txt
echo "I'm from upper" > upper/myboth.txt

# 挂载前文件结构
tree
.
├── lower
│         ├── myboth.txt
│         └── mylower.txt
├── merged
├── upper
│         ├── myboth.txt
│         └── myupper.txt
└── work
4 directories, 4 files

# 以 overlayFS 格式挂载
sudo mount -t overlay overlay -o lowerdir=`pwd`/lower,upperdir=`pwd`/upper,workdir=`pwd`/work `pwd`/merged

tree
.
├── lower
│         ├── myboth.txt
│         └── mylower.txt
├── merged
│         ├── myboth.txt
│         ├── mylower.txt
│         └── myupper.txt
├── upper
│         ├── myboth.txt
│         └── myupper.txt
└── work
5 directories, 7 files

# 尝试写入合并层
echo "I'm from upper2" >> merged/myboth.txt

# 查看 lower 层的 myboth.txt 文件内容
cat lower/myboth.txt
I'm from lower

# 查看 upper 层的 myboth.txt 文件内容
cat upper/myboth.txt
I'm from upper
I'm from upper2

# 结束清理
sudo umout `pwd`/merged
sudo \rm -rf `pwd`/*

留言

您的电子邮箱地址不会被公开。