Docker checkpoint ls 명령으로 컨테이너 체크포인트 목록 확인 방법

DockerBeginner
지금 연습하기

소개

이 랩에서는 docker checkpoint ls 명령을 사용하여 Docker 컨테이너의 체크포인트를 나열하는 방법을 배우게 됩니다. 먼저 컨테이너를 생성한 다음, 컨테이너에 대한 체크포인트를 생성하는 것으로 시작합니다.

체크포인트 생성 후, 표준 docker checkpoint ls 명령을 사용하여 컨테이너와 관련된 체크포인트를 나열하는 방법을 살펴봅니다. 마지막으로, 사용자 지정 체크포인트 디렉토리가 지정된 경우 체크포인트를 나열하는 방법을 배우게 됩니다.

컨테이너 및 체크포인트 생성

이 단계에서는 Docker 컨테이너를 생성한 다음, 컨테이너에 대한 체크포인트를 생성하는 방법을 배우게 됩니다. 체크포인팅을 사용하면 실행 중인 컨테이너의 상태를 저장하고 나중에 복원할 수 있습니다. 이는 디버깅, 마이그레이션 또는 애플리케이션의 스냅샷 생성에 유용합니다.

먼저, 컨테이너를 실행하는 데 사용할 수 있는 간단한 이미지를 가져와 보겠습니다. ubuntu 이미지를 사용합니다.

docker pull ubuntu:latest

이미지가 다운로드되고 있음을 나타내는 출력을 볼 수 있습니다.

latest: Pulling from library/ubuntu
...
Status: Downloaded newer image for ubuntu:latest
docker.io/library/ubuntu:latest

이제 이 이미지에서 컨테이너를 실행해 보겠습니다. 컨테이너를 잠시 동안 실행 상태로 유지하는 간단한 명령을 실행합니다.

docker run -d --name mycontainer ubuntu:latest sleep 3600

명령에 대한 설명은 다음과 같습니다.

  • docker run: 이 명령은 새 컨테이너를 실행하는 데 사용됩니다.
  • -d: 이 플래그는 컨테이너를 detached 모드 (백그라운드에서 실행됨) 로 실행합니다.
  • --name mycontainer: 이 옵션은 컨테이너에 mycontainer라는 이름을 할당합니다.
  • ubuntu:latest: 이 옵션은 컨테이너에 사용할 이미지를 지정합니다.
  • sleep 3600: 이 명령은 컨테이너 내부에서 실행됩니다. 3600 초 (1 시간) 동안 컨테이너를 실행 상태로 유지합니다.

docker ps 명령을 사용하여 컨테이너가 실행 중인지 확인할 수 있습니다.

docker ps

다음과 유사한 출력을 볼 수 있으며, mycontainer가 실행 중임을 보여줍니다.

CONTAINER ID   IMAGE          COMMAND         CREATED         STATUS         PORTS     NAMES
<container_id>   ubuntu:latest   "sleep 3600"   About a minute ago   Up About a minute             mycontainer

이제 실행 중인 컨테이너가 있으므로, 이에 대한 체크포인트를 생성해 보겠습니다. 체크포인트를 생성하려면 docker checkpoint create 명령을 사용해야 합니다.

docker checkpoint create mycontainer mycheckpoint1

명령에 대한 설명은 다음과 같습니다.

  • docker checkpoint create: 이 명령은 컨테이너에 대한 체크포인트를 생성하는 데 사용됩니다.
  • mycontainer: 체크포인트를 생성하려는 컨테이너의 이름입니다.
  • mycheckpoint1: 체크포인트에 지정하는 이름입니다.

명령이 성공하면 아무런 출력이 표시되지 않습니다. 이는 mycontainer 컨테이너에 대한 mycheckpoint1 체크포인트가 생성되었음을 의미합니다.

컨테이너의 체크포인트 목록 확인

이전 단계에서 mycontainer 컨테이너에 대한 mycheckpoint1이라는 체크포인트를 생성했습니다. 이제 특정 컨테이너에 존재하는 체크포인트를 나열하는 방법을 알아보겠습니다.

컨테이너의 체크포인트를 나열하려면 docker checkpoint ls 명령 다음에 컨테이너 이름을 사용합니다.

docker checkpoint ls mycontainer

이 명령은 mycontainer와 관련된 모든 체크포인트 목록을 표시합니다.

이전 단계에서 생성한 체크포인트를 보여주는 다음과 유사한 출력을 볼 수 있습니다.

CHECKPOINT ID
mycheckpoint1

이 출력은 mycontainer 컨테이너에 대해 mycheckpoint1 체크포인트가 존재함을 확인합니다.

동일한 컨테이너에 대해 여러 체크포인트를 생성할 수 있습니다. 목록이 어떻게 변경되는지 확인하기 위해 다른 체크포인트를 생성해 보겠습니다.

docker checkpoint create mycontainer mycheckpoint2

이제 체크포인트를 다시 나열합니다.

docker checkpoint ls mycontainer

이번에는 출력에 두 체크포인트가 모두 표시됩니다.

CHECKPOINT ID
mycheckpoint1
mycheckpoint2

이것은 특정 컨테이너와 관련된 모든 체크포인트를 나열하는 방법을 보여줍니다.

사용자 지정 체크포인트 디렉토리로 체크포인트 목록 확인

이전 단계에서 mycontainer 컨테이너에 대한 체크포인트를 생성하고 기본 체크포인트 디렉토리를 사용하여 나열했습니다. Docker 는 기본 위치에 체크포인트를 저장하지만, 체크포인트를 저장할 사용자 지정 디렉토리를 지정할 수도 있습니다. 이는 체크포인트를 구성하거나 다른 볼륨에 저장하는 데 유용할 수 있습니다.

사용자 지정 디렉토리에 체크포인트를 생성하려면 docker checkpoint create 명령과 함께 --checkpoint-dir 플래그를 사용합니다. 먼저, 사용자 지정 체크포인트를 저장할 디렉토리를 생성해 보겠습니다. 홈 디렉토리에 mycheckpoints라는 디렉토리를 생성합니다.

mkdir ~/project/mycheckpoints

이제 mycontainer에 대한 새 체크포인트를 생성하고 ~/project/mycheckpoints 디렉토리에 저장해 보겠습니다.

docker checkpoint create --checkpoint-dir ~/project/mycheckpoints mycontainer mycheckpoint3

명령에 대한 설명은 다음과 같습니다.

  • docker checkpoint create: 이 명령은 체크포인트를 생성하는 데 사용됩니다.
  • --checkpoint-dir ~/project/mycheckpoints: 이 플래그는 체크포인트를 저장할 사용자 지정 디렉토리를 지정합니다.
  • mycontainer: 체크포인트를 생성하려는 컨테이너의 이름입니다.
  • mycheckpoint3: 이 새 체크포인트에 지정하는 이름입니다.

명령이 성공하면 아무런 출력이 표시되지 않습니다. 이는 mycheckpoint3 체크포인트가 ~/project/mycheckpoints 디렉토리에 생성되었음을 의미합니다.

이제 사용자 지정 디렉토리에 저장된 체크포인트를 나열하려면 --checkpoint-dir 플래그와 함께 docker checkpoint ls 명령을 사용하여 사용자 지정 디렉토리를 지정해야 합니다.

docker checkpoint ls --checkpoint-dir ~/project/mycheckpoints mycontainer

이 명령은 mycontainer 컨테이너에 대해 지정된 사용자 지정 디렉토리에서 발견된 체크포인트를 나열합니다.

다음과 유사한 출력을 볼 수 있으며, 사용자 지정 디렉토리에 생성한 체크포인트만 표시됩니다.

CHECKPOINT ID
mycheckpoint3

이 명령은 지정된 사용자 지정 디렉토리의 체크포인트만 나열하고 (mycheckpoint3) 기본 위치에 저장된 체크포인트 (mycheckpoint1mycheckpoint2) 는 표시하지 않습니다.

컨테이너에 대한 모든 체크포인트를 보려면, 저장 위치에 관계없이 각 디렉토리에서 체크포인트를 별도로 나열하거나 이 정보를 집계하는 도구를 사용해야 합니다. 그러나 특정 사용자 지정 디렉토리에서 체크포인트를 나열하는 데는 --checkpoint-dir 플래그가 필수적입니다.

마지막으로, 생성한 컨테이너를 정리해 보겠습니다.

docker stop mycontainer
docker rm mycontainer

이렇게 하면 mycontainer 컨테이너가 중지되고 제거됩니다.

요약

이 랩에서는 docker checkpoint ls 명령을 사용하여 Docker 컨테이너의 체크포인트를 나열하는 방법을 배웠습니다. 먼저 컨테이너를 생성한 다음 docker checkpoint create 명령을 사용하여 컨테이너에 대한 체크포인트를 생성했습니다.

그런 다음 docker checkpoint ls 명령을 사용하여 생성된 컨테이너의 체크포인트를 나열하는 방법을 살펴보았습니다. 마지막으로, 사용자 지정 체크포인트 디렉토리에 있는 체크포인트를 나열하는 방법을 배우면서 다양한 위치에서 체크포인트를 관리하는 유연성을 보여주었습니다.