Docker工作原理
2025-06-06 09:54:00 0 举报
Docker 工作原理以图解形式展示,核心包含三个主要部分:Docker 客户端、Docker 守护进程(Docker daemon)以及镜像(Image)和容器(Container)的生命周期管理。首先,开发者通过 Docker 客户端发起指令给后台运行的 Docker 守护进程,Docker 守护进程响应后,执行镜像的构建、分发及容器的创建和运行等任务。
作者其他创作
大纲/内容
挂载,实现容器资源可见性
/var/lib/lxcfs/proc
只读层(ro+wh)
读写层+只读层联合挂载同一个目录视图
可读写层(rw)
Init层(ro+wh)
chroot 命令
解决容器 Top 获取到宿主机资源问题
镜像 eden-demo-cola:latest
"java -jar app.jar"
/etc/hosts /etc/hostname/etc/resolv.conf
...
172.16.0.3
172.16.0.2
FROM openjdk:11-jdk-slim
ENTRYPOINT java -jar app.jar
工作空间 /app
容器 eden-demo-layer:a4d38336
Copy On Write & /app
Host Namespace网络隔离
宿主机 Linux Namespace 命名空间隔离
PID Namespace进程隔离
Mount Namespace挂载点隔离
/bin /dev /etc /home /lib /mnt /opt /var /tmp ...
进程信息 /proc
工作空间 /app
容器 eden-demo-cola:ad3ds4ss
10.2.0.1
eth0
docker0172.16.0.1
/var/lib/docker/overlay2/6e3be5d2ecccae7cc...
/var/lib/docker/overlay2/l/4OT7ZYSMYD6F...
宿主机进程ID:29123(实际)容器进程ID:1(当前视图)
...软链接
在容器进程启动之前将宿主机的 /test 挂载到容器根目录
/var/lib/docker/overlay2/l/V3NE3RCPRAK3...
宿主机目录 /test
upperdir 读写层
核心技术
merge 联合挂载点
lowerdir 只读层
eden-demo-cola:latest
/var/lib/docker/overlay2/l/ESSLZXVZL6HAP...
/var/lib/docker/overlay2/l/AVD5VG4SCK7R...
veth2
宿主机 rootfs 联合挂载 /var/lib/docker/image/overlay2
veth1
/var/lib/docker/overlay2/6e3be5d2ecc...-init/diff
/var/lib/docker/overlay2/6e3be5d2c.../merged
限制内存
clone() 调用
限制CPU
blkio
memory
宿主机 Linux Cgroups 进程组资源限制,以 /sys/fs/cgroup 目录暴露接口
cpu
限制设备
devices
Dockefile描述文件
限制IO
0 条评论
下一页
为你推荐
查看更多