linux 允许Docker使用完整的CPU和底层RAM

jucafojl  于 4个月前  发布在  Linux
关注(0)|答案(1)|浏览(52)

有办法指定Docker可以使用的总RAM和总CPU吗?我的机器大小是16 GB RAM和4个CPU。
如何让docker-machine利用完整的RAM和底层CPU?
dockerfile

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:[email protected]/default_default?retryWrites=true&w=majority'

字符串

um6iljoc

um6iljoc1#

你所要求的是默认行为。
docs
默认情况下,容器没有资源约束,可以在主机的内核调度程序允许的范围内使用给定的资源。
要确保容器获得最小数量的资源并且不受调度程序的支配,您可以使用资源reservations来确保容器始终具有最小所需资源,如果您还希望强制执行资源使用的上限,则可以选择limits
参见Resources section in docs

version: "3.8"
services:
  redis:
    image: redis:alpine
    deploy:
      resources:
        # upper threshold
        limits:
          cpus: '0.50'
          memory: 50M
        # lower threshold
        reservations:
          cpus: '0.25'
          memory: 20M

字符串
在这个一般的例子中,Redis服务被限制使用不超过50M的内存和0.50(单核的50%)的可用处理时间(CPU),并保留了20M的内存和0.25的CPU时间(始终可用)。

相关问题