未分类

基于ubuntu20.04基镜像docker镜像systemd功能添加

宿主机配置:
1. 宿主机需激活Cgroup v2,cgroup v2 for containers 需要内核版本 4.15 或更高,而建议在 5.2 或更高再使用 cgroup v2, 从Ubuntu 20.10 开始也默认激活cgroup v2,查看内核版本命令:name -r
2. 使用grep cgroup /proc/filesystems命令确定系统是否支持 Control Group v2: 如果系统支持cgroup v2,则会看到: nodev cgroup2出现
3. 使用ls /sys/fs/cgroup/cgroup.controllers命令检查系统是否激活Group v2 ,文件存在则表明已经使用了 cgroup v2 , 否则就是使用 cgroup v1
4. 激活cgroup v2, 修改 /etc/default/grub 配置在 GRUB_CMDLINE_LINUX 添加参数:systemd.unified_cgroup_hierarchy=1 ,然后执行更新group: sudo update-grub;激活cgroup v2后需重启系统: sudo shutdown -r now

docker引擎配置: 创建systemd 切片, 在/etc/docker/daemon.json中添加如下内容:
{
“exec-opts”: [“native.cgroupdriver=systemd”],
“features”: { “buildkit”: true },
“experimental”: true,
“cgroup-parent”: “docker.slice”
}
完成镜像源配置后执行: sudo systemctl daemon-reload #重启daemon进程
sudo systemctl restart docker #重启docke

参考资料:
https://blog.csdn.net/Lichen0196/article/details/137355517
https://blog.csdn.net/dzqxwzoe/article/details/139193216
https://systemd.io/CONTAINER_INTERFACE/
https://gist.github.com/pinkeen/bba0a6790fec96d6c8de84bd824ad933
https://cloud-atlas.readthedocs.io/zh-cn/latest/linux/ubuntu_linux/cgroup/enable_cgroup_v2_ubuntu_20.04.html
https://blog.csdn.net/kencaber/article/details/121980242
https://xzclip.cn/tech-records/systemd-in-docker/

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

apollo相关问题

2025 年 7 月 15 日