CPUやメモリーリソースを制限 Ver2系
前提
- CPUやメモリーリソースの制限は、Dockerfileの2系と3系では大きく変わっており、互換性がない。3系ではDocker Swarmを利用するようになっている。2系の中でもサポートされているオプションがかなり違うようだ。
- ここでは2系で説明する。
準備
Dockerfile
FROM ubuntu
RUN apt-get update && apt-get install -y \
stress
CMD stress --cpu 8 --timeout 20
- Ubuntuにstressコマンドをインストールして実行する。stressはCPU負荷を強制するベンチマークツールで、今回は8コアを20秒間に設定している
docker-compose.yml
version: '2.4'
services:
myst:
image: stress
container_name: myst
tty: true
stdin_open: true
cpus: '0.3'
cpuset: 0,1
実行
docker-compose up
- ホストOSがWindowsならタスクマネージャーでパフォーマンスを確認する
参考