2016-08-12 2 views
0

Elastic Beanstalk의 도커 컨테이너에서 Apache2 perl 응용 프로그램을 실행하고 Apache2 로그를 가져 오는 데 문제가 있습니다. 내가 인스턴스 폴더를 설정하는 .ebextensions 설정 파일이 Elastic Beanstalk Docker - 컨테이너 로그를 얻는 방법

{ 
    "AWSEBDockerrunVersion": "1", 
    "Ports": [ 
    { 
     "ContainerPort": "80" 
    } 
    ], 
    "Volumes": [ 
    { 
     "HostDirectory": "/container_mnt/www/", 
     "ContainerDirectory": "/var/www/" 
    }, 
    { 
     "HostDirectory": "/var/log/docker_apache2/", 
     "ContainerDirectory": "/var/log/apache2/" 
    } 
    ], 
    "Logging": "/var/log/docker_apache2" 
} 

이 내 Dockerrun.aws.json 파일입니다

...

container_commands: 
    01-command: 
    command: mkdir -p /container_mnt 
    02-command: 
    ... do stuff to setup my application folder in /var/www/ ... 
    03-command: 
    command: mkdir -p /var/log/docker_apache2 

내가 연결 ssh를 사용한 인스턴스 로그가 올바른 폴더에 기록되고있는 것을 볼 수 있습니다. 그러나 콘솔에서 로그를 검색 할 때 아파치 로그는 포함되지 않습니다.

여기에 로깅을 가져 오려면 다른 조치가 필요합니까?

답변

1

"로깅"속성의 목적을 오해하고있는 것으로 나타났습니다. 나는 그것이 호스트 폴더를 참조한다고 생각했지만 실제로 컨테이너 폴더로되어있다.

난 그냥 ...로 값을 변경

"Logging": "/var/log/apache2/" 

있었고, 볼륨 배열에서 항목을 제거합니다.