반응형
docker container 띄워서 작업을 하려고 하는데 다음과 같이 권한 문제가 나왔다.
permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock:
접근 권한 문제인데 보통 local에서 아무 세팅하지 않으면 root만 docker에 접근 가능하다. 매번 sudo docker ~~~라고 쳐야되는 것 보면 알 수 있음.
위와 같은 경우는 십중팔구 docker container를 띄우는 shell script 같은 걸 실행했을 때 마주하는 문제일텐데, shell script 안에서 sudo를 남발할 수 없기 때문에 script를 수정하는 방법은 지양하는게 좋다.
해결 방법은 도커 권한을 root 외에도 접근 가능하도록 변경하는 것.
sudo chmod 666 /var/run/docker.sock
근데 위와 같이 파일 권한 자체를 바꿔버리는 것은 위험하다고 볼 수도 있으니, 그룹을 따로 만들고 그룹에만 권한을 열어주는 방법도 있다.
sudo /usr/sbin/groupadd -f docker
sudo /usr/sbin/usermod -aG docker `user`
sudo chown root:docker /var/run/docker.sock
이런 식이다.
반응형