SW Engineering/DevOps, SRE

Docker Volume (컨테이너 볼륨 공유)-컨테이너 볼륨을 다른 컨테이너와 공유하기

SungWookKang 2019. 3. 26. 03:47
반응형

Docker Volume (컨테이너 볼륨 공유)

-         컨테이너 볼륨을 다른 컨테이너와 공유하기

 

·         Version : Docker

 

Docker 컨테이너가 삭제(또는 재시작)되면 컨테이너의 변경된 데이터가 함께 삭제된다.  데이터를 영속적으로 보존하기위해 volume 사용하는데 지난 포스트에서는 호스트의 디렉터리를 컨테이너와 공유하여, 컨테이너의 데이터 파일을 호스트에 저장하는 방법에 대해서 알아 보았다.

·         Docker Volume (호스트 볼륨 공유) : http://sqlmvp.kr/221449590567

 

이번 포스트에서는 볼륨을 사용하는 컨테이너를 다른 컨테이너와 공유하는 방법에 대해서 살펴 본다.  컨테이너를 생성할 --volumes-from 옵션을 설정하면 -v 또는 -volume 옵션을 적용한 컨테이너의 볼륨 디렉터리를 공유할 있다.

 

여러 컨테이너가 동일한 컨테이너에 --volume-from 옵션을 사용하여 볼륨을 공유하여 사용할 있다. 이러한 구조를 활용하면 호스트에서 볼륨만 공유하고 별도의 역할을 담당하지 않는 볼륨 컨테이너로서 활용할 있다.

 

아래 실습을 통해서 볼륨 컨테이너를 공유하는 방법에 대해서 살펴본다. 우선  볼륨 컨테이너로 사용할 컨테이너에 호스트 볼륨을 공유한다.

docker run  --name volumes_container  -v /tmp/sharetest:/var/sharetest sqlmvp/get-started:part2

 

 

 

볼륨 컨테이너에 연결할 컨테이너를 실행한다. 이때 --volumes-from [볼륨 컨테이너이름] 옵션을 사용하여 컨테이너의 볼륨을 공유한다.

docker run  --name volumes_share1 --volumes-from volumes_container sqlmvp/get-started:part2


 

 

볼륨 컨테이너에 동시에 여려 컨테이너가 볼륨을 공유하는지 확인하기 위해서 다른 컨테이너를 하나 실행한다.

docker run  --name volumes_share2 --volumes-from volumes_container sqlmvp/get-started:part2

 

 

호스트 볼륨이 공유된 볼륨 컨테이너의 디렉터리가 다른 컨테이너에 공유된 것을 확인할 있다.

 

 

[참고자료]

https://docs.docker.com/storage/volumes/

 

 

 

2019-01-25 / Sungwook Kang / http://sqlmvp.kr

 

Docker, docker volume, 도커 볼륨, 도커 명령어, 도커 파일 공유, 도커 호스트 디렉터리 공유

반응형