0Pricing
Docker & DevOps Fundamentals · 강의

Docker 볼륨으로 데이터 관리하기

컨테이너를 삭제하면 데이터가 사라지는 이유를 이해하고, Docker 볼륨과 바인드 마운트를 사용해 데이터를 유지하고 공유하는 방법을 배워 보세요.

Docker 볼륨으로 데이터 관리하기은(는) CoddyKit의 무료 Docker & DevOps Fundamentals 강의입니다. 이것은 4개 중 4번째 강의입니다. 아래에서 전체 강의를 무료로 읽을 수 있으며, 내장 코드 에디터와 24/7 AI 튜터와 함께 브라우저에서 직접 실습할 수 있습니다. 이 강의는 Docker & DevOps Fundamentals 학습 경로의 일부이며, 진행 상황이 웹과 CoddyKit 앱에 동기화됩니다. Docker & DevOps Fundamentals 강의에는 총 4개의 강의가 포함되어 있습니다.

컨테이너는 일시적입니다

컨테이너는 일시적입니다. 컨테이너 안에 기록된 내용은 컨테이너 내부에만 존재하며, 컨테이너를 제거하면 데이터도 삭제됩니다. 상태 비저장 앱에는 괜찮지만 데이터베이스는 데이터를 보존해야 합니다.

쓰기 가능 계층

각 컨테이너에는 이미지 위에 얇은 쓰기 가능 계층이 있습니다. 쓰기 작업은 이 계층에 적용되지만, 계층의 수명은 컨테이너의 수명에 연결되어 있습니다. 컨테이너를 삭제하면 해당 계층도 사라집니다.

데이터를 보존하는 두 가지 방법

Docker는 데이터를 보존하는 두 가지 방법을 제공합니다. Docker가 관리하는 볼륨과 호스트 폴더를 연결하는 바인드 마운트입니다. 일반적으로는 볼륨을 사용하는 것이 권장됩니다.

볼륨 만들기

한 번의 명령으로 이름이 지정된 볼륨을 docker volume create로 만들 수 있습니다. Docker가 볼륨의 실제 저장 위치를 결정하므로 직접 지정할 필요가 없습니다.

docker volume create app-data

볼륨 마운트하기

volumeName:/path/in/container 형식과 함께 -v를 사용하여 볼륨을 연결합니다. 이제 해당 경로에 기록되는 모든 내용이 볼륨에 보존됩니다.

docker run -d -v app-data:/var/lib/data myimage

컨테이너를 제거해도 데이터 보존하기

볼륨은 컨테이너와 독립적이므로 컨테이너를 삭제한 후에도 같은 볼륨을 사용해 새 컨테이너를 실행할 수 있으며, 데이터는 그대로 남아 있습니다.

docker rm -f mycontainer
docker run -d -v app-data:/var/lib/data myimage

로컬 개발을 위한 바인드 마운트

바인드 마운트는 호스트 디렉터리를 컨테이너에 연결합니다. 개발 환경에서 컴퓨터의 코드를 편집하면 컨테이너 내부에 즉시 반영되므로 매우 유용합니다.

docker run -v /Users/me/project:/app node:20

볼륨과 바인드 마운트 비교

용도에 따라 선택하세요. 이식 가능하고 Docker가 관리하는 운영 데이터를 원한다면 볼륨을, 정확한 호스트 경로와 완전한 제어가 필요한 개발 환경이라면 바인드 마운트를 사용합니다.

볼륨 검사하기

docker volume ls는 볼륨 목록을 표시하고, docker volume inspect는 데이터가 디스크의 실제 어디에 저장되어 있는지를 포함한 세부 정보를 보여 줍니다.

docker volume ls
docker volume inspect app-data

컨테이너 간 데이터 공유하기

하나의 볼륨을 여러 컨테이너에 마운트하면 컨테이너들이 파일을 공유할 수 있습니다. 예를 들어 앱 컨테이너와 백업 컨테이너가 같은 데이터를 읽을 수 있습니다.

docker run -v shared:/data writer
docker run -v shared:/data reader

정리하기

사용하지 않는 볼륨은 디스크 공간을 낭비합니다. docker volume rm으로 하나를 제거하거나 docker volume prune으로 연결되지 않은 볼륨을 모두 정리할 수 있습니다. 단, 이 작업은 데이터를 영구적으로 삭제하므로 주의하세요.

docker volume rm app-data
docker volume prune

빠른 확인

Docker 데이터에 대한 이해도를 테스트해 보세요.

정리

데이터를 보존하는 방법을 배웠습니다. 컨테이너는 일시적이지만 볼륨은 컨테이너를 제거해도 유지되며 -v name:/path로 마운트합니다. 반면 바인드 마운트는 개발 환경에 적합합니다.

자주 묻는 질문

“Docker 볼륨으로 데이터 관리하기” 강의는 무료인가요?

네 — “Docker 볼륨으로 데이터 관리하기” 전체 내용을 이 웹사이트에서 무료로 읽을 수 있습니다. 인터랙티브하게 실습하려면(내장 코드 에디터와 24/7 AI 튜터), CoddyKit PRO로 업그레이드하면 Docker & DevOps Fundamentals 강의 전체를 잠금 해제할 수 있습니다. Docker & DevOps Fundamentals 강의에는 총 4개의 강의가 포함되어 있습니다.

“Docker 볼륨으로 데이터 관리하기”에서 뭘 배우나요?

컨테이너를 삭제하면 데이터가 사라지는 이유를 이해하고, Docker 볼륨과 바인드 마운트를 사용해 데이터를 유지하고 공유하는 방법을 배워 보세요. 브라우저에서 직접 실행하는 실습 코드로 Docker & DevOps Fundamentals을(를) 배우며, 24/7 AI 튜터가 강의를 진행하면서 질문에 답변해줍니다.

Docker & DevOps Fundamentals을(를) 시작하는 데 경험이 필요한가요?

사전 경험은 필요하지 않습니다. CoddyKit의 Docker & DevOps Fundamentals은(는) 초급자부터 고급 학습자까지를 위해 구성되어 있으므로, 여기서 시작하거나 처음부터 시작할 수 있으며 자신의 속도대로 진행할 수 있습니다. 이것은 4개 중 4번째 강의입니다.

“Docker 볼륨으로 데이터 관리하기” 강의는 얼마나 걸리나요?

대부분의 CoddyKit 강의는 약 5~10분이 소요됩니다. 각 강의는 간결하고 인터랙티브하여 꾸준한 진행이 가능하며, 웹과 앱에서 중단한 부분부터 바로 시작할 수 있습니다.

이 Docker & DevOps Fundamentals 강의에서 코드를 작성하고 실행할 수 있나요?

네. 모든 Docker & DevOps Fundamentals 강의에는 내장 코드 에디터가 포함되어 있으므로, 브라우저에서 바로 실제 코드를 작성하고 실행한 후 즉시 AI 피드백을 받을 수 있습니다 — 로컬 설정이 필요 없습니다.

이 강의의 모든 강의

  1. 컨테이너란 무엇인가요?
  2. Docker Desktop 설치
  3. 첫 Docker 컨테이너
  4. Docker 볼륨으로 데이터 관리하기
← Docker & DevOps Fundamentals(으)로 돌아가기