Docker组合文件内存,cpu限制

我正在尝试在docker-compose文件中使用内存和CPU。 我得到下面的错误代码:

The Compose file './docker-compose.yml' is invalid because: Unsupported config option for services.web: 'resources' 

我在下面撰写文件

 version: '3' services: web: build: . volumes: - "./app:/home" ports: - "8080:8080" resources: limits: cpus: '0.001' memory: 512M 

如何在docker-compose中使用cpu,memory

由于docker撰写的资源只在版本3中引入,因此您可能没有使用该版本。

看到的输出:

 docker-compose version 

请参阅升级指南 。

OP使用docker-compose 1.12,它还不支持版本3。

解决scheme:我使用版本:'2',而不是版本:'3'在dockercomposer php文件和ı使用mem_limit而不是resources

如果您使用的是Docker Compose v.3 configs并运行docker-compose up模式,那么这可能很有用。

这在docker-compose的任何地方都没有logging,但是你可以在ulimits传递任何有效的系统调用setrlimit选项。

所以,你可以在docker-compose.yaml指定

ulimits: as: hard: 130000000 soft: 100000000

内存大小以字节为单位。 超过这个限制后,你的进程会得到内存分配exception,你可能会陷入或不会陷入。