2.1 기본 docker volume
명령어
Docker에서 볼륨(volumes)은 컨테이너 데이터를 장기적으로 저장할 수 있게 하고, 데이터를 쉽게 관리하고 분리할 수 있게 해줘. docker volume
명령어는 볼륨을 생성, 관리, 삭제할 수 있는 도구 모음을 제공해. 이번 강의에서는 Docker에서 docker volume
명령어를 효과적으로 사용하는 방법에 대해 배워볼게.
기본 docker volume 명령어:
docker volume create
docker volume ls
docker volume inspect
docker volume rm
docker volume prune
2.2 볼륨 생성: docker volume create
docker volume create
명령어는 새로운 볼륨을 생성하는 데 사용돼. 기본적으로 Docker는 호스트의 표준 위치에 볼륨을 생성하지만, 다양한 파라미터를 지정해서 볼륨을 설정할 수도 있어.
간단한 볼륨 생성 예시
이 예시는 my_volume
라는 이름의 볼륨을 생성할 거야.
docker volume create my_volume
설정된 볼륨 생성
드라이버와 파라미터를 지정해서 특정 특성을 가진 볼륨을 생성할 수도 있어.
docker volume create --driver local --opt o=uid=1000 --opt o=gid=1000 --opt type=tmpfs --opt
device=tmpfs my_custom_volume
이 모든 파라미터들은 아래에서 자세히 다룰 예정이니까, 지금은 너무 신경 쓰지 않아도 돼.
2.3 볼륨 목록: docker volume ls
docker volume ls
명령은 호스트에 생성된 모든 볼륨 목록을 표시해.
docker volume ls
출력은 모든 존재하는 볼륨에 대한 정보를 포함할 거야:
DRIVER VOLUME NAME
local my_volume
local my_custom_volume
2.4 볼륨 정보: docker volume inspect
docker volume inspect
명령어는 특정 볼륨에 대한 자세한 정보를 제공해, 위치, 매개변수 및 사용량 등을 볼 수 있어.
docker volume inspect my_volume
명령어 출력은 JSON 형식으로 정보를 포함할 거야:
[
{
"CreatedAt": "2023-07-26T12:34:56Z",
"Driver": "local",
"Labels": {},
"Mountpoint": "/var/lib/docker/volumes/my_volume/_data",
"Name": "my_volume",
"Options": {},
"Scope": "local"
}
]
2.5 볼륨 삭제: docker volume rm
docker volume rm
명령어는 볼륨을 삭제하는 데 사용돼. 삭제하기 전에 볼륨이 컨테이너에서 사용 중이지 않은지 확인하는 게 중요해.
볼륨 삭제
만약 볼륨이 사용 중이라면, Docker는 볼륨을 삭제할 수 없다는 에러를 출력할 거야.
docker volume rm my_volume
사용하지 않는 볼륨 정리: docker volume prune
docker volume prune
명령어는 사용되지 않는 모든 볼륨을 삭제해서 디스크 공간을 확보할 수 있게 해줘.
사용하지 않는 볼륨 정리
명령어 실행 후, Docker는 사용되지 않는 모든 볼륨을 삭제하기 전에 확인을 요청할 거야.
docker volume prune
2.6 명령어의 실용적인 사용 예시
예제 1: 컨테이너에서 볼륨 생성 및 사용
볼륨 생성:
docker volume create app_data
볼륨을 사용한 컨테이너 실행:
docker run -d --name my_app -v app_data:/usr/share/nginx/html nginx
이 예제에서 볼륨 app_data
는 nginx
컨테이너의 디렉토리 /usr/share/nginx/html
에 마운트됩니다.
예제 2: 볼륨 정보 확인
볼륨 생성:
docker volume create logs_data
볼륨을 사용한 컨테이너 실행:
docker run -d --name log_app -v logs_data:/var/log/app busybox
볼륨 정보 보기:
docker volume inspect logs_data
예제 3: 볼륨 삭제 및 정리
볼륨 생성 및 사용:
docker volume create temp_data
docker run -d --name temp_app -v temp_data:/tmp busybox
컨테이너 중지 및 삭제:
docker stop temp_app
docker rm temp_app
볼륨 삭제:
docker volume rm temp_data
모든 사용하지 않는 볼륨 정리:
docker volume prune
GO TO FULL VERSION