18.4. 호스트에서 또는 호스트로 컨테이너 이미지 복사

Skopeo, Buildah, Podman은 동일한 로컬 container-image 스토리지를 공유합니다. 호스트 컨테이너 스토리지 간에 컨테이너를 복사하거나 호스트 컨테이너 스토리지에서 복사하려면 Skopeo 컨테이너에 마운트해야 합니다.

참고

호스트 컨테이너 스토리지의 경로는 루트(/var/lib/containers/storage)와 루트가 아닌 사용자($HOME/.local/share/containers/storage)마다 다릅니다.

사전 요구 사항

  • container-tools meta-package가 설치되어 있습니다.

절차

  1. registry.access.redhat.com/ubi9/ubi 이미지를 로컬 컨테이너 스토리지에 복사합니다.

    $ podman run --privileged --rm -v $HOME/.local/share/containers/storage:/var/lib/containers/storage \
    registry.redhat.io/rhel9/skopeo skopeo copy \
    docker://registry.access.redhat.com/ubi9/ubi containers-storage:registry.access.redhat.com/ubi9/ubi
    • --privileged 옵션은 모든 보안 메커니즘을 비활성화합니다. Red Hat은 신뢰할 수 있는 환경에서만 이 옵션을 사용하는 것이 좋습니다.
    • 보안 메커니즘 비활성화를 방지하려면 이미지를 tarball 또는 기타 경로 기반 이미지 전송으로 내보내고 Skopeo 컨테이너에 마운트합니다.

      • $ podman save --format oci-archive -o oci.tar $IMAGE
      • $ podman run --rm -v oci.tar:/oci.tar registry.redhat.io/rhel9/skopeo copy oci-archive:/oci.tar $DESTINATION
  2. 선택 사항: 로컬 스토리지에 이미지를 나열합니다.

    $ podman images
    REPOSITORY                               TAG     IMAGE ID      CREATED       SIZE
    registry.access.redhat.com/ubi9/ubi      latest  ecbc6f53bba0  8 weeks ago   211 MB