<p>I want to run <a href="https://podman.io" rel="noreferrer">podman</a> as a container to run CI/CD pipelines. However, I keep getting this error from the podman container:</p>

<pre class="lang-sh prettyprint-override"><code>$ podman info
ERRO[0000] 'overlay' is not supported over overlayfs
Error: could not get runtime: 'overlay' is not supported over overlayfs: backing file system is unsupported for this graph driver
</code></pre>

<p>I am using the <a href="https://github.com/jenkinsci/kubernetes-plugin" rel="noreferrer">Jenkins Kubernetes plugin</a> to write CI/CD pipelines that run as containers within a Kubernetes cluster. I've been successful at writing pipelines that use a Docker-in-Docker container to run <code>docker build</code> and <code>docker push</code> commands.</p>

<p>However, running a Docker client and a Docker Daemon inside a container makes the CI/CD environment very bloated, hard to configure, and just not ideal to work with. So I figured I could use <a href="https://podman.io" rel="noreferrer">podman</a> to build Docker images from Dockerfiles without using a fat Docker daemon.</p>

<p>The problem is that <strong>podman</strong> is so new that I have not seen anyone attempt this before, nor I am enough of a podman expert to properly execute this.</p>

<p>So, using the <a href="https://github.com/containers/libpod/blob/master/install.md#ubuntu" rel="noreferrer">podman installation instructions for Ubuntu</a> I created the following Dockerfile:</p>

<pre><code>FROM ubuntu:16.04

RUN apt-get update -qq \
    &amp;&amp; apt-get install -qq -y software-properties-common uidmap \
    &amp;&amp; add-apt-repository -y ppa:projectatomic/ppa \
    &amp;&amp; apt-get update -qq \
    &amp;&amp; apt-get -qq -y install podman

# To keep it running
CMD tail -f /dev/null
</code></pre>

<p>So I built the image and ran it as follows:</p>

<pre class="lang-sh prettyprint-override"><code># Build
docker build -t podman:ubuntu-16.04 .

# Run
docker run --name podman -d podman:ubuntu-16.04
</code></pre>

<p>Then when running this command on the running container, I get an error:</p>

<pre class="lang-sh prettyprint-override"><code>$ docker exec -ti podman bash -c "podman info"

ERRO[0000] 'overlay' is not supported over overlayfs
Error: could not get runtime: 'overlay' is not supported over overlayfs: backing file system is unsupported for this graph driver
</code></pre>

<p>I install podman on an Ubuntu 16.04 machine I had and ran the same <code>podman info</code> command I got the expected results:</p>

<pre class="lang-sh prettyprint-override"><code>host:
  BuildahVersion: 1.8-dev
  Conmon:
    package: 'conmon: /usr/libexec/crio/conmon'
    path: /usr/libexec/crio/conmon
    version: 'conmon version , commit: '
  Distribution:
    distribution: ubuntu
    version: "16.04"
  MemFree: 2275770368
  MemTotal: 4142137344
  OCIRuntime:
    package: 'cri-o-runc: /usr/lib/cri-o-runc/sbin/runc'
    path: /usr/lib/cri-o-runc/sbin/runc
    version: 'runc version spec: 1.0.1-dev'
  SwapFree: 2146758656
  SwapTotal: 2146758656
  arch: amd64
  cpus: 2
  hostname: jumpbox-4b3620b3
  kernel: 4.4.0-141-generic
  os: linux
  rootless: false
  uptime: 222h 46m 33.48s (Approximately 9.25 days)
insecure registries:
  registries: []
registries:
  registries:
  - docker.io
store:
  ConfigFile: /etc/containers/storage.conf
  ContainerStore:
    number: 0
  GraphDriverName: overlay
  GraphOptions: null
  GraphRoot: /var/lib/containers/storage
  GraphStatus:
    Backing Filesystem: extfs
    Native Overlay Diff: "true"
    Supports d_type: "true"
    Using metacopy: "false"
  ImageStore:
    number: 15
  RunRoot: /var/run/containers/storage
  VolumePath: /var/lib/containers/storage/volumes
</code></pre>

<p>Does anyone know how I can fix this error and get podman working from a container?</p>

Fabio Gomez
<p>Your Dockerfile should install iptables as well:</p>

<pre><code>FROM ubuntu:16.04

RUN apt-get update -qq \
    &amp;&amp; apt-get install -qq -y software-properties-common uidmap \
    &amp;&amp; add-apt-repository -y ppa:projectatomic/ppa \
    &amp;&amp; apt-get update -qq \
    &amp;&amp; apt-get -qq -y install podman \
    &amp;&amp; apt-get install -y iptables

# To keep it running
CMD tail -f /dev/null
</code></pre>

<p>Then run the command with:</p>

<pre><code>docker run -ti --rm podman:test bash -c "podman --storage-driver=vfs info"
</code></pre>

<p>This should give you the response you expect.</p>
