반응형
Docker를 사용하다 보면, 데몬 소켓에 연결하는 동안 권한 거부 문제가 발생할 수 있다. 이 문제를 해결하는 방법을 다음과 같이 설명한다.
문제 상황
Docker 데몬 소켓에 연결하는 동안 다음과 같은 오류가 발생할 수 있다.
permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Post "http://%2Fvar%2Frun%2Fdocker.sock/v1.24/auth": dial unix /var/run/docker.sock: connect: permission denied
해결 방법
1. 사용자를 docker 그룹에 추가한다.
sudo usermod -aG docker $USER
2. 변경 사항을 적용하기 위해 로그아웃하고 다시 로그인한다.
3. Docker 데몬을 재시작한다.
sudo systemctl restart docker
4. 이제 Docker 명령을 실행할 때 sudo를 사용하지 않아도 된다. 예를 들어, 다음과 같이 실행할 수 있다.
docker ps
또 다른 해결법
위의 단계를 완료한 후에도 여전히 문제가 발생한다면, docker.sock 파일의 권한을 확인하고 필요한 경우 수정한다.
1. docker.sock 파일의 권한을 확인한다.
ls -l /var/run/docker.sock
2. 출력 결과에서 소유자와 그룹이 root:docker 인지 확인하고, 다른 경우 아래 명령을 실행하여 권한을 수정한다.
sudo chown root:docker /var/run/docker.sock
3. 파일 권한이 srw-rw---- 인지 확인하고, 다른 경우 아래 명령을 실행하여 권한을 수정한다.
sudo chmod 660 /var/run/docker.sock
이렇게 하면 권한 거부 문제가 해결되어야 한다.
만약 문제가 계속된다면, 재부팅 후 다시 시도해 본다. 이렇게 하면 대부분의 경우 문제가 해결된다.
반응형
'Docker' 카테고리의 다른 글
[Docker] docker 특정 container의 로그 실시간 확인하기 (0) | 2022.06.12 |
---|---|
[Docker] ubuntu에 docker 설치하는 방법 (0) | 2022.06.12 |