如何解决允许docker利用完整的CPU和底层RAM
有没有一种方法可以指定码头工人可以使用的总RAM和总CPU?我的机器大小为16 GB RAM和4个CPU。我该如何使docker机器利用完整的RAM和底层CPU?
version: '3'
services:
prisma:
image: prismagraphql/prisma:1.34
restart: always
ports:
- "4466:4466"
environment:
JAVA_OPTS: '-Xmx8192m'
PRISMA_CONFIG: |
port: 4466
databases:
default:
connector: mongo
uri: 'mongodb+srv://abc:test@abc.net/default_default?retryWrites=true&w=majority'
解决方法
您要问的是默认行为。
来自docs
默认情况下,容器没有资源限制,并且可以使用主机内核调度程序允许的尽可能多的给定资源。
要确保容器获取最少的资源并且不受调度程序的约束,您可以做的是使用资源reservations
以确保容器始终具有最少的必需资源,并且可以选择使用limits
如果您还想强制使用资源的上限。
version: "3.8"
services:
redis:
image: redis:alpine
deploy:
resources:
limits:
cpus: '0.50'
memory: 50M
reservations:
cpus: '0.25'
memory: 20M
在此一般示例中,redis服务被限制为使用不超过50M的内存和0.50(单个内核的50%)的可用处理时间(CPU),并具有20M的内存和0.25 CPU保留时间(一如既往)。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。