[ Docker ] root가 아닌 사용자로 관리

2025. 4. 23. 17:03Docker

반응형

시스템 실행 환경

OS Ubuntu 24.04.2
실행 환경 Local VirtualBox VM
Docker 버전 28.1.1

 

🌐 참고 사이트: https://docs.docker.com/engine/install/linux-postinstall/

 

Post-installation steps

Find the recommended Docker Engine post-installation steps for Linux users, including how to run Docker as a non-root user and more.

docs.docker.com

Docker 공식 사이트에서 안내하는 대로 진행하였습니다.

자세한 내용은 위 참고 사이트에서 확인하실 수 있습니다😀

 

root 권한 없이 사용

Docker는 기본적으로 root 사용자로 실행되며, Docker 데몬은 Unix 소켓에 바인딩됩니다.

기본적으로 Unix 소켓의 소유자는 root 사용자이며, 다른 사용자는 sudo 명령어를 통해서만 접근할 수 있습니다.

➡️ Docker 데몬은 항상 root 사용자로 실행됩니다.

 

sudo 없이 docker 명령어를 사용하고 싶을 경우 docker라는 Unix 그룹을 생성하고 사용자를 해당 그룹에 추가해야 합니다.

Docker 데몬이 시작될 때, docker 그룹의 멤버들이 접근할 수 있는 Unix 소켓을 생성합니다.

 

⚠️ 일부 리눅스 배포판에서는 Docker Engine을 설치할 때 자동으로 docker 그룹이 생성되므로, 수동으로 만들 필요 없습니다.

 

1. docker 그룹 생성

sudo groupadd docker
# groupadd: group 'docker' already exists

groupadd 명령어로 docker라는 Unix 그룹을 생성하려 했지만,
위에서 언급한 대로 Docker Engine을 설치하면서 docker 그룹이 생성되어 이미 존재한다고 출력되었습니다.

 

2. 사용자를 docker 그룹에 추가

sudo usermod -aG docker $USER

sudo 명령어 없이 실행하려는 사용자로 접속한 후, 위 명령어를 실행합니다.

 

3. 변경 사항 반영

  • 재시작
  • newgrp 명령어 실행
sudo reboot

리눅스 시스템에서 해당 사용자가 새로운 그룹에 속하도록 인식하려면 세션을 새로 시작하거나

newgrp docker

리눅스/유닉스 시스템에서 현재 사용자 세션의 그룹을 변경하는 데 사용하는 명령어를 실행합니다.

재시작은 시간이 많이 소요되니 newgrp 명령어 실행 방식 추천 ⭐⭐⭐

 

4. 적용 확인

sudo 명령어 없이 docker 명령어가 실행되는지 확인합니다.

docker ps

설정 전
설정 후

 

그룹 설정 전에는 "permission denied" 에러가 발생했으나, 그룹 설정 후에는 정상적으로 실행되었습니다.

반응형

'Docker' 카테고리의 다른 글

[ Docker ] Docker 설치 가이드  (0) 2025.05.07