docker-compose mem_limit and java_option
2024, Jul 26
how to to set Java memory option in a docker-compose.yml
- JAVA_TOOL_OPTIONS 옵션을 사용해서 추가할 수 있다.
cstalk:
image: xxx./repository/test:${VERSION}
container_name: test
environment:
- "TZ=Asia/Seoul"
- "SPRING_PROFILES_ACTIVE=local"
- "JAVA_TOOL_OPTIONS=-Xmx512m -Xms256m"
그렇다면 mem_limit 옵션은 무엇인가?
- mem_limit은 Docker에 올린 컨테이너가 사용할 수 있는 최대 메모리 크기다.
- mem_limit는 JVM의 힙 메모리에 대한 설정이 아니기 때문에 자바 옵션 관련해서 설정하려고 하면 JAVA_TOOL_OPTIONS 또는 JAVA_OPTS 환경 변수를 사용한다.
- 이 설정을 해두면
- 특정 컨테이너가 메모리를 지나치게 점유하는 것을 막을 수 있다.