제목: docker ps - permission denied 오류해결 방법
수정: 2024-02-29
오류발생
docker 설치가 끝난 뒤 docker ps 를 확인했을때 대부분 permission denied error 발생하곤합니다.
해당 오류 해결방안은 다음과 같습니다.
docker -v # 설치된 도커버전 확인
docker ps # permission denied 오류 발생
permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Get "http://%2Fvar%2Frun%2Fdocker.sock/v1.24/containers/json": dial unix /var/run/docker.sock: connect: permission denied
해결방법 1. dock 그룹에 user 추가하기
sudo usermod -aG docker [계정명을 기입하시오]
sudo usermod -aG docker withus
cat /etc/group | grep docker
재접속한 후 docker ps 확인
해결방법 2. 직접 권한부여하기
위 명령어로 문제 해결이 안되면 /var/run/docker.sock에 권한 부여한다.
sudo chmod 666 /var/run/docker.sock
docker ps
(base) withus@withus-Z790-GAMING-X:~$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
chmod는 UNIX 및 UNIX 유사 시스템에서 파일 또는 디렉토리의 권한을 변경하는 명령어입니다. 여기서 666는 권한 코드를 나타냅니다. 666의 각 숫자는 각각 다음을 나타냅니다:
- 첫 번째 6은 소유자의 권한을 나타냅니다.
- 두 번째 6은 그룹의 권한을 나타냅니다.
- 세 번째 6은 다른 사용자들의 권한을 나타냅니다.
이 권한들은 다음의 세 가지 권한에 대한 비트맵으로 나타납니다:
- 읽기 (Read) 권한은 4입니다.
- 쓰기 (Write) 권한은 2입니다.
- 실행 (Execute) 권한은 1입니다.
따라서 6은 읽기(4)와 쓰기(2) 권한을 모두 가지는 것을 나타냅니다. 즉, 666은 소유자, 그룹, 그리고 다른 모든 사용자들이 해당 파일을 읽고 쓸 수 있지만 실행할 수는 없다는 것을 의미합니다.
즉, sudo chmod 666 /var/run/docker.sock 명령어는 /var/run/docker.sock 파일에 대한 소유자, 그룹, 그리고 다른 모든 사용자들의 권한을 읽기와 쓰기로 설정합니다.
Done is better than perfect
'Python > 1️⃣ 환경 설정' 카테고리의 다른 글
[Visual Studio] 맥북에서 visual studio code 언어 변경하기(한글 → 영어) (26) | 2024.02.28 |
---|---|
[Visual Studio] 비주얼스튜디오 파일명 옆에 a, m, u 의미는? (0) | 2023.07.19 |
[Docker] 설치된 도커 삭제하는 명령어 (0) | 2023.06.27 |
알고리즘 순서도 그리기 - drawio, EdrawMax (0) | 2023.04.24 |
Ubuntu booting USB로 우분투 설치하기 (3) | 2023.04.22 |