mem_limit est supporté par docker-compose? Comment puis-je le tester?
J'ai une suite docker-compose.yml
repository:
image: myregistry/my_nginx_image
mem_limit: 60m
volumes:
- /etc/localtime:/etc/localtime
ports:
- "80:80"
Comment puis-je prouver que le conteneur ne dépasse pas 60 Mo de RAM?
J'utilise:
Oui. La limitation de mémoire est prise en charge par docker-compose et la valeur peut être définie comme dans votre exemple avec "m" pour mégaoctets.
Il est possible de vérifier quelle est la limite de mémoire définie pour l'exécution du conteneur Docker à l'aide de la commande "statistiques fixe".
Si votre nom de conteneur est "repository_1", utilisez cette commande:
docker stats repository_1
Le résultat sera le même que celui-ci:
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
Selon documentation de figue , simple
mem_limit: 1000000000
devrait suffire. J'imagine que vous devriez supprimer "m" et utiliser des octets au lieu de mégaoctets.
Vous pouvez trouver comment configurer docker pour limiter les ressources (CPU & MEMORY) et comment tester vos restrictions dans ce message écrit l’année dernière: resource-management-in-docker .