DEV/Container

[Docker] Root Dir 변경 및 sudo 없이 사용 (with. Ubuntu)

l-eazzy 2025. 1. 6. 16:44

0. 개요

이번에 새로 개발용 서버 구성하면서 변경하는 Docker 구성에 대한 설정이다.

그냥 기록용이지만 다른 사람도 사용할 경우가 있을것 같아 남겨둔다.

 

1. sudo 붙이지 않고 사용.

아래 내용은 우분투(또는 리눅스 OS) 환경에서 도커 설치 후 명령어 사용 시, sudo 없이 사용하는 설정 방법이다.

 

a. 유저를 docker 그룹에 추가

sudo usermod -aG docker $USER

 

b. 로그아웃

exit # ssh 연결의 경우. 접속 자체를 끊으면 로그아웃된다.

 

c. 사용자의 실제 사용 그룹 변경

newgrp docker

 

 

2. Docker 기본 Root 경로 변경.

기본 볼륨 내에 변경하는 용도로도 사용할수도있지만,

이번에는 리눅스에 추가 볼륨 설정 후 변경이 필요해서 진행하게 되었다.
(볼륨 추가에 대한 부분은 길지 않으니 추후에 시간나면 작성하려한다.)

도커의 기본 경로는 ' docker info | grep "Root Dir" ' 명령어로 확인이 가능하다.

 

a. Docker 정지

sudo systemctl stop docker

 

b. daemon.json 파일 작성

sudo vi /etc/docker/daemon.json
{
        "data-root": "/mnt/docker-data"
}

 

vi 편집기는

  • a 는 수정 모드
  • esc 작업중인 상태 종료 (a로 편집상태일 때)
  • :wq 는작성 후 종료
  • :wq! 는 강제 작성 후 종료 (느낌표를 누르면 강제 실행을 의미함)
  • :q 는 종료 (수정된 사항이 있으나 저장하기 싫고 그냥 나가고 싶으면 느낌표를 붙이면 된다.) 

c. Docker 시작

sudo systemctl start docker

 

d. Docker Root 경로 확인해보기

docker info | grep "Root Dir"

 

명령어를 실행하면 기존 경로와 달라진걸 볼수있다.

 

if. 권한?

만약에 변경하고자 하는 폴더의 권한이 필요하다면 아래 명령어를 참고하자.

sudo chown -R root:root /mnt/docker-data
sudo chmod -R 700 /mnt/docker-data

 

 

3. 마무리

Docker가 정상 실행되는 것까지 테스트하였고 추가적으로 필요한 컨테이너 실행 시, 문제점이 없는지 체크해볼 예정이다.
(별도의 코멘트가 없으면 잘 사용하고 있는 중인걸로)

 

 

4. 참고자료

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

https://jinane.tistory.com/45

 

docker : data root directory 변경하기

1. 실행되어 있는 docker daemon의 data root directory 확인 docker info | grep "Root Dir" -> 기본 설치 경로는 대부분 아래와 같이 "/var/lib/docker" 로 예상된다. 2. docker daemon 중지 (CentOS 7.x) systemctl stop docker.service 3.

jinane.tistory.com

https://velog.io/@jeong3320/dockerdocker-sudo%EA%B6%8C%ED%95%9C%EC%97%86%EC%9D%B4-%EC%8B%A4%ED%96%89%ED%95%98%EA%B8%B0

 

[docker]docker sudo권한없이 실행하기

sudo groupadd dockersudo usermod -aG docker ${USER}orsudo gpasswd -a $USER dockersudo service docker restartsudo su - // 루트사용자로 변경su - ubuntu // 사용자로

velog.io

 

728x90