Skip to content

How do I use zfs driver for podman without breaking bootc? #1677

@yacoob

Description

@yacoob

I've configured my system to use zfs driver for podman storage:

/etc/containers/storage.conf:

[storage]
driver = "zfs"
graphroot = "/srv/containers"

[storage.options.zfs]
fsname = "srv/containers"

Turns out, this makes bootc complain about the extra storage it keeps for logically bound images:

Deploying: done (7 seconds)
error: Upgrading: Staging: Pulling bound images: Creating imgstorage: Initializing images: Subprocess failed: ExitStatus(unix_wait_status(32000))
time="2025-10-08T01:32:08+01:00" level=error msg="No zfs dataset found for root" backingFS=tmpfs root=/run/bootc/storage storage-driver=zfs
Error: configure storage: no zfs dataset found for rootdir '/run/bootc/storage': prerequisites for driver not satisfied (wrong filesystem?)

As far as I understand bootc keeps an additional storage area, that is going to be initialized the first time it's used. With driver=zfs podman can't use that location, as it's on tmpfs.

if I run STORAGE_DRIVER=overlay bootc update the extra storage area is initialized as overlay, and subsequent calls work fine, as the initialized storage remembers its type.

Do you think bootc should override STORAGE_DRIVER=overlay in its calls?

Metadata

Metadata

Assignees

No one assigned

    Labels

    triagedThis looks like a valid issue

    Type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions