如何在docker里限制内存和cpu

docker run

docker run --memory=1g --cpu="1" nealshan/performance-sample-api:1.0

注意swap,swap space是virtual memory,如果physical memory满了,就会动用swap space,也就是virtual memory对应的disk了,用硬盘就慢了,这时候你需要的是加内存。

 

docker-compose

只能在docker stack deploy里起作用,要配合swarm一起用

version: '3.2'

    services:

        performance-sample-api:

            image: nealshan/performance-sample-api:1.0

            container_name: performance-sample-api

            ports:

            - 8080:8080

            # this is only for docker stack like docker warm, docker-compose up does not support this

            deploy:

                resources:

                    limits:

                        cpus: '0.50'

                        memory: 50M

                    reservations:

                        cpus: '0.25'

                        memory: 20M

查看docker container里使用的内存和CPU

docker stats

你可能感兴趣的:(运维)