【问题标题】:How do we set the the RAM and disk space for a docker container?我们如何设置 docker 容器的 RAM 和磁盘空间?
【发布时间】:2016-01-24 21:27:33
【问题描述】:

以下是我拥有的 docker 容器和图像的详细信息。

Animeshs-MacBook-Pro:docker_tests animesh$ docker-machine ls
NAME          ACTIVE   URL          STATE     URL                         SWARM   DOCKER    ERRORS
celery-test   *        virtualbox   Running   tcp://192.168.99.100:2376           v1.9.1    
hello-world   -        virtualbox   Stopped                                       Unknown   

Animeshs-MacBook-Pro:docker_tests animesh$ docker ps -a
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS                      PORTS               NAMES
33f0eca77b4c        celery-image1       "/bin/bash"         2 hours ago         Exited (0) 25 minutes ago                       current_image
a4607f34b309        ubuntu:latest       "/bin/bash"         4 hours ago         Exited (0) 3 hours ago                          celery_app

Animeshs-MacBook-Pro:docker_tests animesh$ docker-machine ssh celery-test
Boot2Docker version 1.9.1, build master : cef800b - Fri Nov 20 19:33:59 UTC 2015
Docker version 1.9.1, build a34a1d5

docker@celery-test:~$ df -h
Filesystem                Size      Used Available Use% Mounted on
tmpfs                   896.6M    889.6M      7.0M  99% /
tmpfs                   498.1M         0    498.1M   0% /dev/shm
cgroup                  498.1M         0    498.1M   0% /sys/fs/cgroup
none                    464.8G     44.0G    420.8G   9% /Users
tmpfs                   896.6M    889.6M      7.0M  99% /mnt/sda1/var/lib/docker/aufs

docker@celery-test:~$ exit

Animeshs-MacBook-Pro:docker_tests animesh$ docker start current_image
current_image

Animeshs-MacBook-Pro:docker_tests animesh$ docker ps -a
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS                   PORTS               NAMES
33f0eca77b4c        celery-image1       "/bin/bash"         2 hours ago         Up 3 seconds                                 current_image
a4607f34b309        ubuntu:latest       "/bin/bash"         4 hours ago         Exited (0) 3 hours ago                       celery_app

Animeshs-MacBook-Pro:docker_tests animesh$ docker attach current_image
root@33f0eca77b4c:/# df -h
Filesystem      Size  Used Avail Use% Mounted on
none            897M  890M  7.0M 100% /
tmpfs           499M     0  499M   0% /dev
tmpfs           499M     0  499M   0% /sys/fs/cgroup
tmpfs           897M  890M  7.0M 100% /etc/hosts
shm              64M     0   64M   0% /dev/shm

root@33f0eca77b4c:/# exit
exit

Animeshs-MacBook-Pro:docker_tests animesh$ 

我的虚拟机空间似乎已用完。

我想为celery-image1 映像分配 8GB 磁盘空间和 2GB RAM。我该怎么做?

如果我在创建容器时可以输入任何命令行参数,我也可以这样做。

【问题讨论】:

    标签: docker virtual-machine docker-machine


    【解决方案1】:

    如果你运行$man docker run 并寻找“内存”,你可以找到:

       -m, --memory=""
          Memory limit (format: <number>[<unit>], where unit = b, k, m or g)
    
    
       Allows you to constrain the memory available to a container. If the host supports swap memory, then the -m memory setting can be larger than physical RAM. If  a  limit
       of  0  is  specified  (not  using -m), the container's memory is not limited. The actual limit may be rounded up to a multiple of the operating system's page size (the
       value would be very large, that's millions of trillions).
    
    
       --memory-reservation=""
          Memory soft limit (format: <number>[<unit>], where unit = b, k, m or g)
    
    
       After setting memory reservation, when the system detects memory contention or low memory, containers are forced to restrict their consumption to their reservation. So
       you should always set the value below --memory, otherwise the hard limit will take precedence. By default, memory reservation will be the same as memory limit.
    
    
       --memory-swap=""
          Total memory limit (memory + swap)
    

    这些是您在运行$docker run 时可以设置的标志。需要注意的是,您还可以对 CPU 使用率设置一些限制。

    【讨论】:

      【解决方案2】:

      您可以指定 RAM 限制according to the documentation

      磁盘大小无法限制(但有一些work on that)。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2015-10-28
        • 1970-01-01
        • 1970-01-01
        • 2015-12-05
        • 2015-12-04
        • 2020-09-05
        • 2021-10-16
        相关资源
        最近更新 更多