개발 중인 서버에 접근해보니 루트 디렉토리가 91% 사용 중이었습니다. (이미 조치해버려서 사진은 예시이다.)우리 회사는 KT 공공 클라우드를 사용 중에 있는데, 루트 디렉토리를 고작 17GB 밖에 안줍니다.
어쨌든, 도커의 루트 디렉토리 증설은 불가피했습니다.
01. 루트 디렉토리 설정 확인하기
docker info | grep Root 명령어로 Docker Root Dir이 /var/lib/docker임을 확인했습니다.
[root@abcd merged]# docker info | grep Root
WARNING: bridge-nf-call-ip6tables is disabled
WARNING: Running Swarm in a two-manager configuration. This configuration provides
no fault tolerance, and poses a high risk to lose control over the cluster.
Refer to https://docs.docker.com/engine/swarm/admin_guide/ to configure the
Swarm for fault-tolerance.
Root Rotation In Progress: false
Docker Root Dir: /var/lib/docker
02. 루트 디렉토리 설정 변경하기
도커의 설정은 /etc/docker/daemon.json를 변경하면 됩니다.
json 형식으로 작성하면 되며, data-root 요소를 작성합니다.
[root@abcd merged]# vi /etc/docker/daemon.json
{
"data-root": "/app/docker/overlay" # 변경하고자 할 디렉토리로 작성합니다.
}
03. 설정 변경 후 도커 재기동하기
[root@abcd merged]# systemctl restart docker
04. 루트 디렉토리 설정 재확인하기
docker info | grep Root 명령어로 다시 한번 확인합니다.
설정했던 바와 같이 /app/docker/overlay로 변경됨을 확인할 수 있습니다.
[root@abcd docker]# docker info | grep Root
WARNING: Running Swarm in a two-manager configuration. This configuration provides
no fault tolerance, and poses a high risk to lose control over the cluster.
Refer to https://docs.docker.com/engine/swarm/admin_guide/ to configure the
Swarm for fault-tolerance.
Root Rotation In Progress: false
Docker Root Dir: /app/docker/overlay
05. 마치며...
이상으로, 도커의 루트 디렉토리를 변경하는 법을 알아보았습니다.
최근 도커에 대해 하나둘 알아가며 느낀 점은, 굉장히 친숙해지기 어렵겠다... 와 익숙해지고, 능숙해진다면 굉장히 편리하겠다 라고 느끼고 있습니다.
조금 더 성장할 수 있는 계기가 되었으면 좋겠습니다!
'개발 > DevOps' 카테고리의 다른 글
Dockerfile을 이용해 Docker image 생성해보자. (1) | 2023.12.04 |
---|---|
ChatGPT-4(챗지피티4)를 무료로 사용해보자 - 뤼튼 (0) | 2023.09.14 |
Jenkins public key 변경하기 (2) | 2023.04.07 |
개발 서버를 무료로 배포하고 싶을 땐? (0) | 2023.02.27 |
Docker Swarm 환경에서 자원 할당을 해보자. (0) | 2023.01.29 |
댓글