at_shiita.ishigaki
2022年6月9日 9時03分
SWUpdateを使ってPodmanのコンテナイメージをeMMCに保存した場合、readonlyとして保存されます。
readonlyのコンテナイメージを作成・削除を行う場合はabos-ctrl podman-rwコマンドを使用します。
abos-ctrl podman-rwの使い方を以下に示します。
[armadillo ~]# abos-ctrl podman-rw --help
Usage: abos-ctrl podman-rw <podman command>
Examples:
abos-ctrl podman-rw image list
abos-ctrl podman-rw rmi docker.io/alpine
abos-ctrl podman-rw pull docker.io/alpine
abos-ctrl podman-rw load -i container.tar
SWUpdate以外の方法でreadonlyのコンテナイメージを作成する場合はabos-ctrl podman-rw pullコマンドを使用します。
[armadillo ~]# abos-ctrl podman-rw pull docker.io/alpine
Trying to pull docker.io/library/alpine:latest...
Getting image source signatures
…
…
Writing manifest to image destination
Storing signatures
6e30ab57aeeef1ebca8ac5a6ea05b5dd39d54990be94e7be18bb969a02d10a3f
比較として、readonlyではないbusyboxのコンテナイメージを用意します。
[armadillo ~]# podman pull docker.io/busybox
Trying to pull docker.io/library/busybox:latest...
Getting image source signatures
…
…
Writing manifest to image destination
Storing signatures
3c19bafed22355e11a608c4b613d87d06b9cdd37d378e6e0176cbc8e7144d5c6
readonlyのコンテナイメージ一覧を確認するには、podman image listコマンドか、abos-ctrl podman-rw image listコマンドを使用します。
※image listの部分はimagesでも同様の結果が得られます。
podman imagesコマンドの場合、readonlyのコンテナイメージもそうではないコンテナイメージも表示され、R/Oの列でreadonlyかどうか確認することができます。
abos-ctrl podman-rw listコマンドの場合は、readonlyのコンテナイメージのみ表示されます。
[armadillo ~]# podman image list
REPOSITORY TAG IMAGE ID CREATED SIZE R/O
docker.io/library/busybox latest 3c19bafed223 24 hours ago 1.64 MB false #R/Oがfalseとなっている
docker.io/library/alpine latest 6e30ab57aeee 2 weeks ago 5.56 MB true #R/Oがtrueとなっている
[armadillo ~]# abos-ctrl podman-rw image list
REPOSITORY TAG IMAGE ID CREATED SIZE
docker.io/library/alpine latest 6e30ab57aeee 2 weeks ago 5.56 MB #readonlyのコンテナイメージのみ表示される
readonlyのコンテナイメージを削除する場合は、abos-ctrl podman-rw rmiコマンドを使用します。
[armadillo ~]# podman rmi docker.io/alpine
Error: cannot remove read-only image "6e30ab57aeeef1ebca8ac5a6ea05b5dd39d54990be94e7be18bb969a02d10a3f" #podman rmiコマンドの場合は削除できない
[armadillo ~]# abos-ctrl podman-rw rmi docker.io/alpine
Untagged: docker.io/library/alpine:latest
Deleted: 6e30ab57aeeef1ebca8ac5a6ea05b5dd39d54990be94e7be18bb969a02d10a3f