티스토리 뷰
[Docker] 1. Ubuntu에 Docker 설치하기
[Docker] 2. Docker registry에서 이미지 다운받아 컨테이너 생성 및 구동하기
[Docker] 3. Docker 컨테이너 생성/구동/중지/삭제 명령어 익히기
[Docker] 4. Docker 우분투 컨테이너에서 작업 후 이미지 제작하기
[Docker] 5. Docker 컨테이너의 데이터 공유하기
도커 컨테이너는 컨테이너 삭제 시 컨테이너 내부에 있는 데이터도 함께 사라집니다.
이 데이터를 보존하기 위해서 도커볼륨을 사용합니다.
도커 내 데이터 디렉토리를 호스트 디렉토리와 공유하며 연결해놓는 것입니다.
컨테이너 생성 시 -v {컨테이너 디렉토리명} 옵션을 걸어줍니다.
그러면 컨테이너로 들어갔을 때 data라는 디렉토리가 생성됩니다.
docker run -it -v /data --name="ubuntu_py39" ubuntu_py39 bash
이 data 디렉토리 안에 텍스트파일 하나를 생성해보겠습니다.
아래와 같이 vi편집기를 설치하고, 테스트파일을 하나 생성해줍니다.
저는 텍스트파일 안에 hello world라고 적어놨어요.
# apt-get 업데이트
apt-get update
# 편집기 설치
apt-get install vim
Ctrl + p + q를 차례로 눌러 컨테이너를 빠져나온 후, 터미널에서 /var/lib/docker/volumes 경로로 이동합니다.
cd /var/lib/docker/volumes/
가장 길쭉한 이름의 디렉토리가 볼륨과 연결된 디렉토리입니다.
들어가면 _data라고 또 디렉토리가 있고, _data로 들어가면 비로소 test.txt 파일을 만나볼 수 있습니다.
반대로 호스트 터미널에서 _data 디렉토리에 "test2.txt" 파일을 생성해도, -v 옵션으로 연동되어 있기 때문에
컨테이너 내부의 /data 디렉토리에서도 "test2.txt"파일을 조회할 수 있습니다.
이제 컨테이너를 구동중지 및 삭제를 하더라도, 컨테이너 내부에서 생성된 데이터들은 보존이 가능하게 되었습니다!
'개발환경 > K8S·Docker' 카테고리의 다른 글
[Kubernetes] 2. hello kubernetes bootcamp! 프로젝트 배포해보기 (0) | 2023.03.01 |
---|---|
[Kubernetes] 1. Ubuntu에 Kubernetes 설치하기 (0) | 2023.02.28 |
[Docker] 4. Docker 우분투 컨테이너에서 작업 후 이미지 제작하기 (0) | 2023.02.26 |
[Docker] 3. Docker 컨테이너 생성/구동/중지/삭제 명령어 익히기 (0) | 2023.02.25 |
[Docker] 2. Docker registry에서 이미지 다운받아 컨테이너 생성 및 구동하기 (0) | 2023.02.23 |