Podman v2.1.1でルートレスモードのコンテナ実行ができない

公開:2021/01/02
更新:2021/01/02
1 min読了の目安(約1300字TECH技術記事

内容

CentOS Stream release 8の新規インストール後、Podmanでルートレスモードでコンテナ実行できないトラブルに遭遇。

  • 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)

無事にルートレスモードでコンテナ実行ができるようになりました。