반응형

1. 시험환경

    ˙ 우분투(ubuntu) 리눅스 v20.04

    ˙ docker

 

2. 목적

    ˙ 컨테이너(container)안에서 생성된 파일 및 데이터는 컨테이너 종료(rm)와 함께 삭제된다.

    ˙데이터 저장 전용 컨테이너(container)와 호스트(Host)를 이용하여 복합 저장소를 구성한다.

        - 여러 컨테이너(container)안에서 생성된 파일을 데이터 저장 전용 컨테이너(container)에 마운트한다.

        - 데이터 저장 전용 컨테이너(container)를 영구적인 저장소(volume)에 보관하기 위해 호스트에 마운트한다.

 

3. 적용

    ① -v 옵션과 함께 컨테이너(container)를 실행하면 Container의 저장소가 Host의 경로로 마운트 된다.

        - 마운트 target 경로 : Host의 $(pwd)/docker-nginx-html

        - 마운트 source  경로 : Container의 /usr/share/nginx/html

 

    --volumes-from  옵션과 함께 컨테이너(container)를 실행하면 지정경로를 다른 컨테이너(container, 데이터 저장 전용)에 마운트한다.

        - $ docker run -d --volumes-from [container(저장소)]  [image] 

 

    ③ nginx 컨테이너(conatiner) 안에 진입하여 파일을 생성한다.

        - "stupefied_joliot" 컨테이너(container) : test1.txt 파일 생성

        - "confident_heyrovsky" 컨테이너(container) :  test2.txt 파일 생성

 

    ④ 데이터 저장 전용 컨테이너(my-ubuntu)에 진입하여 다른 컨테이너(nginx)에서 생성한 파일이 저장되었는지 확인한다.

        - 마운트 경로 : /usr/share/nginx/html은 nginx 실행을 위해 미리 정의된 경로이다.

 

 

    ⑤ 생성된 모든 컨테이너를 삭제한다.

        - 모든 컨테이너 삭제 명령어 : $ docker rm $(docker ps -a -q)

 

4. 결과

    ˙ 컨테이너(conatiner)가 삭제되어도 Host 마운트 경로에 파일이 남아있는 것을 확인할 수 있다.

 

반응형

+ Recent posts