docker volume?
- Docker가 생성하고 관리하는 컨테이너의 영구 데이터 저장소
- 명령을 사용하여 볼륨을 명시적으로 생성할 수도 있고, Docker가 컨테이너 또는 서비스 생성 중에 볼륨 생성 가능
- 볼륨을 생성하면 Docker 호스트의 디렉터리에 저장. 볼륨을 컨테이너에 마운트하면 이 디렉터리가 컨테이너에 마운트
- 볼륨이 Docker에 의해 관리되고 호스트 머신의 핵심 기능과 분리
volume
- 도커 볼륨 관리
$ docker volume COMMAND
Commands:
- create Create a volume
- inspect Display detailed information on one or more volumes
- ls List volumes
- prune Remove all unused local volumes
- rm Remove one or more volumes
docker volume 사용
- docker run 명령어에서 --mount 또는 --volume 옵션으로 도커 볼륨에 마운트
- 아직 존재하지 않는 볼륨으로 컨테이너를 시작하면 Docker가 볼륨을 자동으로 생성
--mount
- docker run option)--mount mount : Attach a filesystem mount to the container
$ docker run --mount type=volume[,src=<volume-name>],dst=<mount-path>[,<key>=<value>...]
- src : 마운트의 소스. 명명된 볼륨의 경우 볼륨의 이름 / 익명 볼륨의 경우 이 필드는 생략
- dst : 컨테이너에 파일이나 디렉토리가 마운트되는 경로
--volume, -v
- docker run option) -v, --volume list : Bind mount a volume
$ docker run -v [<volume-name>:]<mount-path>[:opts]
- 콜론(:) 으로 순서 구분
bind mounts?
- 호스트 머신의 파일이나 디렉터리가 호스트에서 컨테이너로 마운트
- 컨테이너에서 파일을 생성하고 해당 파일을 호스트의 파일 시스템에 보관
bind ounts 사용
- docker run 명령어에서 --mount 또는 --volume 옵션으로 바인드 마운트
--mount
- docker run option)--mount mount : Attach a filesystem mount to the container
$ docker run --mount type=bind,src=<host-path>,dst=<container-path>[,<key>=<value>...]
- src : 호스트에서 파일 또는 디렉터리의 위치 (절대 경로 또는 상대 경로)
- dst : 컨테이너에 파일이나 디렉터리가 마운트되는 경로 (절대 경로)
- 지정된 마운트 경로가 호스트에 없으면, 디렉토리를 자동으로 생성하지 않고 오류 발생
--volume , -v
- docker run option) -v, --volume list : Bind mount a volume
$ docker run -v <host-path>:<container-path>[:opts]
- 콜론(:) 으로 순서 구분
- Docker 호스트에 아직 존재하지 않는 파일이나 디렉터리를 바인드 마운트 하는 경우, Docker가 자동으로 호스트에 디렉터리를 생성 (항상 디렉터리로 생성)
* docker Volumes
https://docs.docker.com/engine/storage/volumes/
* Bind mounts
https://docs.docker.com/engine/storage/bind-mounts/
'! > docker' 카테고리의 다른 글
| docker compose (0) | 2025.05.29 |
|---|---|
| docker network (0) | 2025.04.15 |
| Dockerfile (0) | 2025.04.04 |
| Docker CLI 명령어 (0) | 2024.11.14 |
| Docker 설치 (MacOS) (0) | 2022.09.05 |