2015-03-03 25 views
35

mem_limit docker-compose tarafından destekleniyor mu? Bunu nasıl test edebilirim?Docker-compose'da mem_limit kullanabilir miyim? ve nasıl?

I have a aşağıdaki liman işçisi-compose.yml ben konteyner aslında RAM 60 mb aşmadığını kanıtlayabilirim nasıl

repository: 
    image: myregistry/my_nginx_image 
    mem_limit: 60m 
    volumes: 
    - /etc/localtime:/etc/localtime 
    ports: 
    - "80:80" 

?

kullanıyorum:

+1

: bu seferki için

docker stats repository_1 

Bunun sonucu simillar olacaktır: kapsayıcı adı ise

"repository_1" o zaman bu komutu kullanın : //docs.docker.com/compose/yml/#working95dir-entrypoint-user-hostname-domainname-mem95limit-privileged-restart-stdin95open-tty-cpu95shares – kikicarbonell

+0

'docker istatistikleri 'konteyner kaynaklarını izlemeyi sağlar. – ulidtko

+0

Güncelleştirilmiş dokümanlar bağlantısı: https://docs.docker.com/compose/compose-file/compose-file-v2/#cpu-and-other-resources, compose dosyasında 'mem_limit 'işlevini kullanın. – levibostian

cevap

44

Evet. Bellek sınırlaması, docker-compose tarafından desteklenir ve değer, örneğinizde olduğu gibi megabaytlar için "m" ile ayarlanabilir.

"Docker stats" komutunu kullanarak Docker kabını çalıştırmak için ayarlanan bellek sınırının ne olduğunu kontrol etmek mümkündür. evet, mem_limit ve cpu_shares http ayarlayabilirsiniz

CONTAINER  CPU % MEM USAGE/LIMIT MEM %  NET I/O 
repository_1 1.93% 4.609 MiB/60 MiB 7.20%  1.832 KiB/648 B 
+0

hangi docker sürümünü kullanıyorsunuz. 1.3.1 istatistik komutu yok – montells

+0

Docker 1.5 kullanıyorum. Görünüşe göre "docker istatistikleri", Docker 1.5: https://blog.docker.com/2015/02/docker-1-5-ipv6-support-read-only-containers-stats-named-dockerfiles-and adresinde tanıtıldı -Daha/ – maniekq

3

liman işçisi-oluşturmak,

mem_limit: 1000000000 

basit yeterli olmalı. Sanırım, "m" yi bırakmalı ve megabayt yerine bayt kullanmalısınız.

+0

Evet, bunu yaptım. Herhangi bir hata almamakla birlikte, kullanacağım bellek miktarını sınırlandırdığından emin değilim. Kontrol edebileceğim gibi mi? – montells

+0

"mem_limit" ve diğer seçenekler hakkında dokümanlar oluşturmak için bağlantı: https://docs.docker.com/compose/compose-file/compose-file-v2/#cpu-and-other-resources – levibostian

0

Docker'ın kaynakları sınırlamalarını (CPU & MEMORY) ve geçen yıl yazılan kısıtlamaları sınamanın nasıl olduğunu bulabilirsiniz: resource-management-in-docker.

+0

Test etmenin başka bir kolay yolu MEMORY limitleri aşağıdaki gibi kapsayıcıların içinde kod çalıştırıyor: http://soichi.us/archives/11 ama cevabımın referansını gösterildiği gibi takas davranışlarına dikkat edin. – kikicarbonell

İlgili konular