예전에 docker 로그의 logroatate에 관하여 살펴본 적이 있습니다만,
더 좋은 방법이 없을까 최근에 찾아보니 이미 몇년 전에 해당
솔루션들이 있더군요.
이용 방법은 로그 드라이버 지정 및 옵션 설정입니다.
이용하는 방법은 다음과 같습니다.
상세 항목 및 값은 위의 링크를 참조합니다.
1) daemon.json 전체 docker 설정하는 경우
리눅스의 /etc/docker 또는 윈도우의 C:\ProgramData\docker\config\ 에 daemon.json 에 다음과 같이 지정합니다.
{
"log-driver": "json-file",
"log-opts": {
"max-size": "10m",
"max-file": "3",
"labels": "production_status",
"env": "os,customer"
}
}
그리고 docker 서비스를 재시작합니다.
2) docker 명령을 직접 이용할 경우
docker run --log-opt max-size=100m --log-opt max-file=5 my-app:latest
와 같이 --log-out 옵션을 이용합니다.
최대 100메가 크기의 5개의 파일이 로그 로테이트 됩니다.
3) docker-compose.yaml 에 개별 지정하는 경우
docker-compose.yaml 에는 다음과 같은 식으로 image 다음에 지정하고 docker-compose를 재시작하면 됩니다.
my-app:
image: my-app:latest
logging:
driver: "json-file"
options:
max-file: "5"
max-size: "100m"
어느 분께는 도움이 되셨기를 ..
덧글|덧글 쓰기|신고