docker - docker CPU利用率为130%,这是什么意思?

标签 docker dockerfile

我必须将容器限制为仅使用1个CPU和3GB内存,因此我使用了以下命令:

docker run -it -d -p 9090:9090 myImage1.4 --cpus="0.5" --memory=3Gb



当我执行 docker stats b8e00adbba34 时,它给出了以下结果:
CONTAINER           CPU %               MEM USAGE / LIMIT       MEM %               NET I/O               BLOCK I/O             PIDS
b8e00adbba34        0.66%               1.979 GiB / 7.632 GiB   25.93%              1.695 MB / 4.415 MB   223.5 MB / 7.799 MB   0

我的 docker 信息是:
OSType: linux
Architecture: x86_64
Number of Docker Hooks: 3
CPUs: 2
Total Memory: 7.632 GiB

我的问题是,尽管我将内存限制为3GB,为什么它会变成7.6 GB(主机RAM),而CPU%却超过100%?

最佳答案

您正在将这些参数传递给图像,而图像可能什么也没做。您需要将它们传递给docker

docker run -it -d -p 9090:9090 myImage1.4 --cpus="0.5" --memory=3G

应该是(旧的docker版本)
docker run -it --cpu-quota=50000 --memory=3G -d -p 9090:9090  myImage1.4

或(较新的Docker版本)
docker run -it --cpus="0.5" --memory=3G -d -p 9090:9090  myImage1.4

关于docker - docker CPU利用率为130%,这是什么意思?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46422746/

相关文章:

未找到 Docker 拉公共(public)镜像存储库

heroku - 如何在 Dockerfile 中从 Heroku 公开动态 $PORT?

docker - 如何在 Docker Compose 中启动 Apache Drill

Docker Confluent Kafka HDFS Sink 正在运行但任务失败

python -/tmp/pip-install-xtrlkujj/pyaudio/中的 “python setup.py egg_info”命令失败,错误代码为1

linux - 守护进程 buildbot 启动

mysql - 如何预配置和预填充官方MySQL docker容器?

docker - 带有 RSDriver 的 RSelenium。错误 : httr output: Failed to connect to localhost port 4445: Connection refused

docker - 将 git 命令的结果存储在 ENV 中

docker - 为什么Docker build没有-f参数?