본문 바로가기
Data Engineering/docker, kubernetes(k8s)

Docker 볼륨, 바인드 마운트 개념 및 실행

by EverReal 2024. 12. 23.

 

Docker 볼륨, 바인드 마운트 개념

 

 

※ 출처 : https://docs.docker.com/engine/storage/volumes/

 

 1) 바인드 마운트

호스트 디렉터리를 컨테이너 디렉터리에 덮어쓰는 구조

 

바인드 마운트는 볼륨에 비해 기능이 제한되어있으며,

바인드 마운트를 사용하면 호스트 시스템의 파일 또는 디렉토리가 컨테이너에 마운트 됩니다.

그리고 파일 또는 디렉토리가 호스트 시스템의 전체 또는 상대 경로로 참조됩니다. 

 

 

docker run -d -v /root/html:/usr/share/nginx/html  -p 8081:80 --restart always --name nginx-bind-mounts nginx

 

 2) 볼륨

호스트 디렉터리와 컨테이너 디렉터리를 서로 동기화시키는 구조

 

비어있는 볼륨을 연결하는 경우 컨테이너 디렉터리에 있는 파일이 보존되나,

동일한 파일이 존재한 상태로 연결하는 경우 덮어쓰기되는 특성이 있습니다.

 

볼륨을 사용하면 컨테이너에 존재하는 파일을 그대로 보존할 수도 있고,

필요할 때 변경해서 사용할 수도 있습니다.

또, 사용중인 볼륨을 docker volume ls 명령으로 조회 가능하며, docker volume rm 명령으로 삭제할 수도 있어서

바인드 마운트보다 관리가 용이합니다.

 

docker volume create nginx-volume

docker run -d -v nginx-volume:/usr/share/nginx/html -p 8082:80 --restart always --name nginx-volume nginx

 

 

 

 

※ 참고 : [Docker] Volume과 Bind mount에 대하여 

반응형

댓글