我想将podman作为运行CI / CD管道的容器运行。但是,我不断从podman容器中收到此错误:
$ 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
Run Code Online (Sandbox Code Playgroud)
我正在使用Jenkins Kubernetes插件编写在Kubernetes集群中作为容器运行的CI / CD管道。我已经成功编写了使用Docker-in-Docker容器运行docker build和docker push命令的管道。
但是,在容器内运行Docker客户端和Docker Daemon会使CI / CD环境变得非常膨胀,难以配置,并且使用起来并不理想。因此,我认为我可以使用podman从Dockerfiles构建Docker映像,而无需使用胖Docker守护程序。
问题是podman太新了,以至于我之前从未见过有人尝试过这样做,也没有足够的podman专家来正确执行此操作。
因此,使用针对Ubuntu的podman安装说明,我创建了以下Dockerfile:
FROM ubuntu:16.04
RUN apt-get update -qq \
&& apt-get install -qq -y software-properties-common uidmap \
&& add-apt-repository -y ppa:projectatomic/ppa …Run Code Online (Sandbox Code Playgroud) 我想知道如何在不使用--privileged参数的情况下在 docker 容器中运行 Podman ?我没有使用rootless,这意味着我现在正在与root用户一起运行。
privileged$ docker run --rm -it --privileged podman:test sh
$ / podman run --rm -it docker.io/alpine sh
Trying to pull docker.io/alpine...
Getting image source signatures
Copying blob cbdbe7a5bc2a done
Copying config f70734b6a2 done
Writing manifest to image destination
Storing signatures
/ #
Run Code Online (Sandbox Code Playgroud)
$ docker run --rm -it --cap-add SYS_ADMIN --cap-add NET_ADMIN podman:test sh
$ / podman run --rm -it docker.io/alpine sh
Trying to pull docker.io/alpine...
Getting image …Run Code Online (Sandbox Code Playgroud)