docker run 퍼미션 문제 해결

백엔드&인프라 추종자·2025년 11월 2일

인프라 공부

목록 보기
3/4

개인생각

  • /var/run/docker.sock 를 통해 docker 데몬과 통신하는 것으로 보임
  • 저 파일의 권한은 440 으로 root, docker 이렇게 user, group 이 설정되어있음
  • 그래서 일반 유저는 권한 없고, docker 그룹 추가가 가장 깔끔한 해결책

네, 정우님. 지금 메시지를 보면 권한 문제입니다.

permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock

이건 현재 사용자로 Docker 데몬 소켓(/var/run/docker.sock)에 접근 권한이 없어서 발생합니다.
즉, Docker 데몬은 root 권한으로 실행 중인데, 일반 사용자로 접근하려 해서 거부된 상황입니다.


1️⃣ 원인

  • Docker는 Linux에서 daemon(root) 로 동작합니다.
  • 일반 사용자는 /var/run/docker.sock 읽기/쓰기 권한이 없으면 연결 불가
  • 따라서 docker 명령을 실행할 때 root 권한이 필요하거나,
    일반 사용자를 docker 그룹에 추가해야 합니다.

2️⃣ 해결 방법

방법 A: root로 실행

sudo docker run hello-world
  • 가장 간단하지만 매번 sudo 붙여야 합니다.

방법 B: 사용자 계정을 docker 그룹에 추가 (권장)

sudo groupadd docker       # docker 그룹이 없으면 생성
sudo usermod -aG docker $USER
  • $USER는 현재 로그인 사용자
  • 이후 로그아웃 후 재로그인 해야 그룹 권한 적용
docker run hello-world
  • 이제 sudo 없이 실행 가능

방법 C: Docker 소켓 권한 변경 (비권장)

sudo chmod 666 /var/run/docker.sock
  • 모든 사용자가 접근 가능하지만 보안상 위험이 있음
  • 서버 환경에서는 권장하지 않음

💡 요약

  • Linux에서는 Docker root 권한 필요
  • 권장: 일반 사용자를 docker 그룹에 추가 → sudo 없이 사용

원하시면 제가 Windows + WSL2 환경에서 MinIO Docker 실행 권한 문제 없이 바로 띄우는 방법까지 안내해드릴 수 있습니다.
정리해드릴까요?

profile
AI 답변 글을 주로 올립니다.

0개의 댓글