문제
docker run
를 실행했지만 아무 일도 일어나지 않는 것 같고 docker 로그에 다음과 같은 오류가 표시됩니다.
bash
$[Error] KTranslate Discovery SNMP Error: There was an error when writing the /snmp-base.yaml SNMP configuration file: chtimes /snmp-base.yaml: operation not permitted.
이는 snmp-base.yaml
파일에 docker 사용자가 파일을 편집할 수 없도록 하는 소유권 권한이 있을 때 발생합니다. 대부분의 경우 root
사용자 또는 유사한 권한이 있는 계정으로 파일을 만들었기 때문입니다. Docker 컨테이너는 이 파일을 수정할 수 없는 권한이 없는 사용자로 실행됩니다. 컨테이너 내에서 ktranslate
는 항상 사용자 ID 1000과 그룹 ID 1000을 사용하려고 하므로 소유권은 해당 ID가 파일을 소유하도록 허용해야 합니다.
해결책
파일을 docker 컨테이너로 전달하기 전에 권한 있는 계정에서 파일의 소유권을 변경하십시오. 예를 들어 다음을 실행합니다.
bash
$chown 1000:1000 snmp-base.yaml