Docker绑定CPU

tsx 复制代码
lscpu | grep "CPU(s):"
bash 复制代码
多核CPU的服务器Docker还可以控制容器运行限定使用哪些CPU内核,可以使用--cpuset-cpus选项来使某些程序独享CPU核心,
以便提高其处理速度,对应的Cgroup文件为/sys/fs/cgroup/cpuset/docker/容器ID号/cpuset.cpus。
选项后直接跟参数0、1、2......表示第1个内核,第2个内核,第3个内核,与/proc/cpuinfoo中的标号相同。

使新建容器绑定第1~4的核心使用

bash 复制代码
docker run -itd --cpuset-cpus 0,1,2,3 centos:stress /bin/bash
或者
docker run -itd --cpuset-cpus 0-3 centos:stress /bin/bash
该容器内的进程只会在0,1,2,3,的CPU上运行

如果服务器有16个核心,那么CPU编号为0~15

查看容器中进程与CPU内核的绑定关系

bash 复制代码
docker exec 5cfdcba3 taskset -c -p 1
pid 1's current affinity list: 0-3	//容器内部第一个进程编号一般为1

尽量使用绑定内核的方式分配CPU资源给容器进程使用,然后再配合--cpu-shares选项动态调整CPU使用资源的比例。

相关推荐
Dillon Dong1 小时前
【系统运维】Docker版本冲突问题详解:从错误到解决方案
docker·容器
Dillon Dong1 小时前
【系列主题】从 Docker 构建失败看依赖隔离:多阶段构建的“隐形陷阱”
运维·docker·容器
AI服务老曹2 小时前
从底层协议对接说起:基于 GB28181/RTSP 的异构视频流接入架构设计与源码级解析
人工智能·docker
如果'\'真能转义说3 小时前
《数据不丢失!本地挂载的 Docker 一键启动PS1脚本》
运维·docker·容器
郝开3 小时前
Docker Compose 本地环境搭建:mysql
mysql·docker·容器
Dillon Dong3 小时前
【系列主题】拯救 OOM 与构建中断:Next.js 在 Docker 中的静态生成(SSG)避坑指南
开发语言·javascript·docker
阿桂有点桂4 小时前
Laravel队列再docker中开启和配置
docker·php·laravel
人工智能培训4 小时前
AI模型部署进阶:Docker容器化部署AI项目
人工智能·深度学习·机器学习·docker·容器·transformer·知识图谱
胡小禾4 小时前
K8S Helm
docker·容器·kubernetes
深念Y7 小时前
Docker Windows C盘爆满迁移到D盘:完整试错与成功路径
windows·docker·wsl·镜像·清理·迁移·c盘