728x90
우분투에서 docker를 설치하면 root 권한이 필요하여 명령어 사용시 sudo를 이용해야 합니다. sudo를 사용하면 암호를 입력해야 하고, 명령어 history를 찾는데 어려움이 있으므로 sudo 없이 docker 명령어를 사용하는 방법을 알아보겠습니다.
docker 그룹에 사용자 추가하기
docker 그룹에 사용자를 추가하면 sudo 없이 docker 명령어를 사용할 수 있습니다. 우선 docker group이 없다면 docker group 부터 생성합니다. 만약 docker 그룹이 있으면 도커 그룹 생성은 넘어가도 됩니다.
$ sudo groupadd docker
이제 docker 그룹에 로그인 한 사용자를 추가합니다.
$ sudo usermod -aG docker {user_id}
docker 재시작 하기
docker 그룹에 사용자를 추가한 후 docker 서비스를 재시작 한 후 재로그인을 하거나 아예 시스템을 재부팅 합니다.
다음 명령어로 도커를 재시작합니다.
$ sudo service docker restart
시스템 재시작은 아래 명령어를 이용합니다.
$ sudo systemctl reboot
재로그인 혹은 재기동이 완료되면 sudo를 빼고 docker 명령을 실행해봅니다.
$ docker ps
권한 관련 오류가 발생하는 경우
혹시 아래와 같은 권한 오류가 발생하는 경우 관련 파일 권한을 변경해햐 합니다.
$ docker ps -a
Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Get http://%2Fvar%2Frun%2Fdocker.sock/v1.40/containers/json?all=1: dial unix /var/run/docker.sock: connect: permission denied
/var/run/docker.sock 파일의 권한을 666으로 변경하여 그룹 내 다른 사용자도 접근 가능하게 변경합니다.
$ sudo chown root:docker /var/run/docker.sock
혹은
$ sudo chmod 666 /var/run/docker.sock
지금까지 docker 명령어를 sudo 없이 사용하는 방법에 대해서 알아보았습니다.
728x90
728x90
LIST
Comment