🦭
Podman v2.1.1でルートレスモードのコンテナ実行ができない
下記内容は記事公開時点(2021/1/2)の内容です。現在はdnf upgrade
を実行するとPodman v.3.0.0以降にアップデートされます。
内容
CentOS Stream release 8の新規インストール後、Podmanでルートレスモードでコンテナ実行できないトラブルに遭遇。
補足。インストールには
CentOS-Stream-8-x86_64-20201211-dvd1.iso
を使用。
このISOではPodman v.2.1.1がインストールできた
- UBI7をルートレスモードで実行しようとしてエラー発生
$ podman -v
podman version 2.1.1
$ podman run -itd --name test ubi7
Trying to pull registry.access.redhat.com/ubi7...
Getting image source signatures
Copying blob be73321c7956 done
Copying blob eae19a56e9c6 done
Copying config 063b2549dd done
Writing manifest to image destination
Storing signatures
Error: container_linux.go:370: starting container process caused: process_linux.go:459: container init caused: rootfs_linux.go:59: mounting "sysfs" to rootfs at "/sys" caused: operation not permitted: OCI runtime permission denied error
原因
Podman v2.1.1のバグの模様。BugzillaにCentOS Stream 8で再現したコメントあり。
対処
Podmanをv2.2.xにアップデートする。
新規インストール後のCentOS Stream 8の場合は、とりあえずdnf upgrade
を実行
$ sudo dnf upgrade
- Podmanのアップデート後、動作確認
$ podman -v
podman version 2.2.1
$ podman run -itd --name test ubi7
2698a02e18fd7177534fdc084c023dc0c50923b807cdfa6c2787d3c310cd8799
$ podman ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
2698a02e18fd registry.access.redhat.com/ubi7:latest /bin/bash 6 seconds ago Up 6 seconds ago test
$ podman exec test id
uid=0(root) gid=0(root) groups=0(root)
無事にルートレスモードでコンテナ実行ができるようになりました。
Discussion