5.12. コンテナーのエクスポートおよびインポート
podman export
コマンドを使用して、実行中のコンテナーのファイルシステムをローカルマシンの tarball にエクスポートできます。たとえば、頻繁に使用しない大規模なコンテナーがある場合、スナップショットを保存して後で復元できるようにする場合には、podman export
コマンドを使用して、実行中のコンテナーの現在のスナップショットを tarball にエクスポートできます。
podman import
コマンドを使用して tarball をインポートし、ファイルシステムイメージとして保存できます。これにより、このファイルシステムイメージを実行するか、他のイメージのレイヤーとして使用できます。
前提条件
-
container-tools
メタパッケージがインストールされている。
手順
registry.access.redhat.com/ubi10/ubi
イメージに基づいて、myubi
コンテナーを実行します。podman run -dt --name=myubi registry.access.redhat.com/10/ubi
$ podman run -dt --name=myubi registry.access.redhat.com/10/ubi
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 必要に応じて、すべてのコンテナーをリスト表示します。
podman ps -a
$ podman ps -a CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES a6a6d4896142 registry.access.redhat.com/10:latest /bin/bash 7 seconds ago Up 7 seconds ago myubi
Copy to Clipboard Copied! Toggle word wrap Toggle overflow myubi
コンテナーに割り当てます。podman attach myubi
$ podman attach myubi
Copy to Clipboard Copied! Toggle word wrap Toggle overflow testfile
という名前のファイルを作成します。echo "hello" > testfile
[root@a6a6d4896142 /]# echo "hello" > testfile
Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
CTRL+p
およびCTRL+q
を使用してコンテナーからデタッチします。 ローカルマシンで、
myubi
のファイルシステムをmyubi-container.tar
としてエクスポートします。podman export -o myubi.tar a6a6d4896142
$ podman export -o myubi.tar a6a6d4896142
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 必要に応じて、現在のディレクトリーの内容をリスト表示します。
ls -l
$ ls -l -rw-r--r--. 1 user user 210885120 Apr 6 10:50 myubi-container.tar ...
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 必要に応じて、
myubi-container
ディレクトリーを作成し、myubi-container.tar
アーカイブからすべてのファイルをデプロイメントします。ツリー形式でmyubi-directory
の内容をリスト表示します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow myubi-container.tar
にコンテナーのファイルシステムが含まれていることを確認できます。myubi.tar
をインポートして、ファイルシステムイメージとして保存します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow すべてのイメージをリスト表示します。
podman images
$ podman images REPOSITORY TAG IMAGE ID CREATED SIZE docker.io/library/myubi-imported latest c296689a17da 51 seconds ago 211 MB
Copy to Clipboard Copied! Toggle word wrap Toggle overflow testfile
ファイルの内容を表示します。podman run -it --name=myubi-imported docker.io/library/myubi-imported cat testfile hello
$ podman run -it --name=myubi-imported docker.io/library/myubi-imported cat testfile hello
Copy to Clipboard Copied! Toggle word wrap Toggle overflow