도커 컨테이너 내부의/sys에서 chown을 작동시키는 방법

도커 컨테이너 내부의/sys에서 chown을 작동시키는 방법

도커에 소프트웨어를 넣으려고 하는데chown /sys/class/net/eth0

이것은 내가 통제할 수 없는 독점 코드이므로 Docker 내에서 작동하도록 해야 합니다.

실행하면 다음과 같은 오류 로그가 표시됩니다.

{"error":"MySQL: Connection refused"}chown: changing ownership of ‘/sys/class/net/eth0’: Read-only file system

docker 쓰기 액세스 권한을 부여하지 않고 이 문제를 해결하고 싶습니다. docker가 제공하는 격리를 유지하고 싶습니다.

답변1

--network host표준 네트워크 모니터링 소프트웨어를 실행하려면 명령 에 이 옵션을 사용해야 합니다 docker run. 이렇게 하면 동일한 네트워크 장치를 모두 볼 수 있습니다.

실제로 패킷을 캡처해야 하는 경우 Docker 컨테이너에 추가 "기능"도 부여해야 합니다. 그렇지 않으면 권한 거부 오류가 발생합니다.

답변2

Dockerfile에서 권한을 허용할 필요가 없습니다. docker run 명령만 추가하면 됩니다.--볼륨/sys:/sys:ro이미지를 실행하면

관련 정보