320x100
320x100

개요

이게뭐약 프로젝트 수행 중 컨테이너 및 서비스 데몬을 통한 실행 상태에서 로그 파일이 증적이 되지 않음을 발견했다

개발하는 로컬 PC에서는 분명히 log가 쌓이는데, 이상하게 서비스 데몬이나 컨테이너 모드에서는 증적이 되지 않았었다

 

 

 

컨테이너에서 로그 증적하도록 호스트의 디렉터리와 마운트하는 방법

  docker run -d \
    -v /must_be_madness/what_is_pill/wip-main-server-v2/logs:/usr/local/wip-main-server-v2/logs \
    --name wip-main-server-v2 wip-main-server-v2 \

 

중요한 점은 host에서의 위치와 컨테이너에서의 위치를 모두 절대경로로 선언해야한다는 것이다

Dockerfile에 VOULME 속성도 빼야한다 그걸 넣었을때는 안됐었다

 

 

 

 

서비스 데몬에서 로그증적하는 방법

systemctl cat 서비스 명

sudo vim 서비스 데몬 파일

# 아래 내용 추가
StandardOutput=file:/must_be_madness/what_is_pill/wip-main-server-v2/logs/main_server.log
StandardError=file:/must_be_madness/what_is_pill/wip-main-server-v2/logs/error.log

 

주의할점은 로그  디렉터리와 파일의 소유자를  서비스 데몬 파일에 선언된 User 및 Group과 동일하게 맞춰야한다는 것이다

cd 로그 파일이 위치한 디렉터리
sudo chown -R user:userGroup .

 

300x250
728x90