Skip to content

podman in podman fails since overlay over overlay is not possible #1965

@traylenator

Description

@traylenator

For puppet modules that use podman themselves (e.g quadlets module) then when running with container_podman hypervisor we are doing overlay filesystem over and overlay filesystem. It is rootful or rootless podman inside rootless podman.

e.g voxpupuli/puppet-quadlets#61

fails with:

Oct 27 10:51:24 attitude kernel: overlay: filesystem on /var/lib/containers/storage/overlay-containers/238f46b39a2c81dd53f3e31aa4595ffb2fc1b61944811201e50b099ab14482c7/rootfs/upper not supported as upperdir

The following patch to docker-beaker works:

diff --git a/lib/beaker/hypervisor/docker.rb b/lib/beaker/hypervisor/docker.rb
index 5ddd7f2..b59d943 100644
--- a/lib/beaker/hypervisor/docker.rb
+++ b/lib/beaker/hypervisor/docker.rb
@@ -84,6 +84,9 @@ module Beaker
                                 'RestartPolicy' => {
                                   'Name' => 'always',
                                 },
+                                'Binds' => [
+                                  '/home/steve/foo:/var/lib/containers:Z',
+                                ],
                               },
                             })
     end

just mount any random directory into the podman hypervisor so if you run podman inside there is only one level overlay filesystem.

Still thinking if this is the correct thing to do.. On the positive side it will not affect anything unless using podman in acceptance test.

Recommendation not to run overlay inside overlay - https://www.redhat.com/en/blog/podman-inside-container

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions