侧边栏壁纸
博主头像
Narutoの博客

行动起来,活在当下

  • 累计撰写 52 篇文章
  • 累计创建 28 个标签
  • 累计收到 0 条评论

目 录CONTENT

文章目录

docker 容器限制 CPU 性能

Naruto
2025-03-23 / 0 评论 / 0 点赞 / 5 阅读 / 0 字

docker 容器限制 CPU 性能

测试项目地址:https://github.com/ColinIanKing/stress-ng

启动命令:

docker run --rm -it --cpus 0.2  --name stress-test colinianking/stress-ng --cpu 1

1. docker run

docker run --rm -it --cpus 0.2  --name stress-test colinianking/stress-ng --cpu 1

成功限制容器 cup 资源在 20%

2. docker compose

  • compose 文件参考
name: stress-test
services:
    stress-ng:
        stdin_open: true
        tty: true
        deploy:
            resources:
                limits:
                    cpus: 0.2
        container_name: stress-test
        image: colinianking/stress-ng
        command: --cpu 1

2.1 普通启动

docker compose up -d

可以看出,容器 cup 资源被限制在了 20%

2.2 加入--compatibility

docker compose --compatibility up -d

发现容器的 cpu 资源也被限制在了 20%

2.3 compose 的另一种写法

name: stress-test
services:
    stress-ng:
        stdin_open: true
        tty: true
        cpus: 0.255
        container_name: stress-test
        image: colinianking/stress-ng
        command: --cpu 1

使用 docker compose up -d 启动,发现容器 cpu 也被限制了

2. portainer

2.1 Containers

  • 使用 portainer 创建一个容器,并限制资源

  • 可以看出,容器 cpu 资源被限制在了 10%

2.2 Stacks

  • 布置 stacks

  • 可以看到,容器 cup 资源被限制在 20%

3. 多 cup 核心测试

3.1 单线程

docker run --rm -it --cpus 0.4  --name stress-test colinianking/stress-ng --cpu 1
  • 单进程结果

3.2 双线程

docker run --rm -it --cpus 0.4  --name stress-test colinianking/stress-ng --cpu 2
  • 双线程结果

参考

  1. Services top-level elements

  2. Docker 容器 CPU、memory 资源限制

0

评论区