CodeGym /행동 /Docker SELF /볼륨 생성 및 관리

볼륨 생성 및 관리

Docker SELF
레벨 19 , 레슨 1
사용 가능

2.1 기본 docker volume 명령어

Docker에서 볼륨(volumes)은 컨테이너 데이터를 장기적으로 저장할 수 있게 하고, 데이터를 쉽게 관리하고 분리할 수 있게 해줘. docker volume 명령어는 볼륨을 생성, 관리, 삭제할 수 있는 도구 모음을 제공해. 이번 강의에서는 Docker에서 docker volume 명령어를 효과적으로 사용하는 방법에 대해 배워볼게.

기본 docker volume 명령어:

  1. docker volume create
  2. docker volume ls
  3. docker volume inspect
  4. docker volume rm
  5. 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 명령어는 특정 볼륨에 대한 자세한 정보를 제공해, 위치, 매개변수 및 사용량 등을 볼 수 있어.

Terminal

docker volume inspect my_volume

명령어 출력은 JSON 형식으로 정보를 포함할 거야:

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는 볼륨을 삭제할 수 없다는 에러를 출력할 거야.

Terminal

docker volume rm my_volume

사용하지 않는 볼륨 정리: docker volume prune

docker volume prune 명령어는 사용되지 않는 모든 볼륨을 삭제해서 디스크 공간을 확보할 수 있게 해줘.

사용하지 않는 볼륨 정리

명령어 실행 후, Docker는 사용되지 않는 모든 볼륨을 삭제하기 전에 확인을 요청할 거야.

Terminal

docker volume prune

2.6 명령어의 실용적인 사용 예시

예제 1: 컨테이너에서 볼륨 생성 및 사용

볼륨 생성:

Terminal

docker volume create app_data

볼륨을 사용한 컨테이너 실행:

Terminal

docker run -d --name my_app -v app_data:/usr/share/nginx/html nginx

이 예제에서 볼륨 app_datanginx 컨테이너의 디렉토리 /usr/share/nginx/html에 마운트됩니다.

예제 2: 볼륨 정보 확인

볼륨 생성:

Terminal

docker volume create logs_data

볼륨을 사용한 컨테이너 실행:

Terminal

docker run -d --name log_app -v logs_data:/var/log/app busybox

볼륨 정보 보기:

Terminal

docker volume inspect logs_data

예제 3: 볼륨 삭제 및 정리

볼륨 생성 및 사용:

Terminal

docker volume create temp_data

docker run -d --name temp_app -v temp_data:/tmp busybox

컨테이너 중지 및 삭제:

Terminal

docker stop temp_app

docker rm temp_app

볼륨 삭제:

Terminal

docker volume rm temp_data

모든 사용하지 않는 볼륨 정리:

Terminal

docker volume prune
코멘트
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION