Docker DB 유지하기(볼륨마운트)

1919 단어 dockerdocker

해당 게시물은 소규모의 애플리케이션에 해당됩니다.

볼륨의 기능

컨테이너의 특정 파일 시스템 경로를 호스트 시스템에 다시 연결하는 기능을 제공한다. 디렉토리가 마운트되면 해당 디렉토리의 변경사항은 호스트에서도 볼수 있다. 컨테이너를 다시 시작할때 동일한 디렉토리를 마운트하면 동일한 파일이 표시된다.
즉, 애플리케이션에서 어떠한 수정사항을 했고, 해당 디렉토리로 마운트를 한다면 재실행 해서도 동일한 파일이 표시되어 보여진다.

<그림1> 보다시피 좌측 그림에 아이템을 추가하고 컨테이너를 재실행했을때 우측 그림처럼 보여짐을 알수있음

볼륨생성

도커는 물리적 위치를 유지하기 때문에 볼륨이름을 잘 기억하면 된다.

 $ docker volume create todo-db

컨테이너 실행 및 볼륨 마운트

-v : 볼륨 마운트 지정 플래그
/etc/todos/ : 경로에 생성된 모든 파일을 마운트
seolroh/getting-started : 컨테이너 이름

$ docker run -dp 3000:3000 -v todo-db:/etc/todos seolroh/getting-started

컨테이너 중지 및 제거 후 확인

$ docker ps
$ docker rm -f <id>
$ docker run -dp 3000:3000 -v todo-db:/etc/todos seolroh/getting-started

볼륨 정보 확인

$ docker volume inspect todo-db
[
    {
        "CreatedAt": "2099-12-25T04:09:23Z",
        "Driver": "local",
        "Labels": {},
        "Mountpoint": "/var/lib/docker/volumes/todo-db/_data",
        "Name": "todo-db",
        "Options": {},
        "Scope": "local"
    }
]

Mountpoint : 데이터가 저장된 디스크의 실제 위치이다.

기타

#build
$ docker build -t getting-started .

#execute container
$ docker run -dp 3000:3000 getting-started

# log
$ docker logs -f inspiring_matsumoto

참고 페이지
docker docs

좋은 웹페이지 즐겨찾기