-
Notifications
You must be signed in to change notification settings - Fork 787
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Builds in docker fail with 'Invalid argument' when doing RUN after VOLUME on overlayfs #3281
Comments
A friendly reminder that this issue had no activity for 30 days. |
@giuseppe PTAL |
Still fails on rawhide with buildah 1.22.0-0.13.dev.gitec35bc4.fc35. |
@giuseppe what do you think the invalid option failure is? |
This affects us as well. One of our customer would like to use buildah image in the GitLab CI (docker executor) to build images. |
Environment detailsdocker-ce-rootless-extras-20.10.7-3.el7.x86_64
libseccomp-2.3.1-4.el7.x86_64
docker-ce-cli-20.10.7-3.el7.x86_64
docker-ce-20.10.7-3.el7.x86_64
containers-common-0.1.40-12.el7_9.x86_64
docker-scan-plugin-0.8.0-3.el7.x86_64
containerd.io-1.4.6-3.1.el7.x86_64
libseccomp-devel-2.3.1-4.el7.x86_64
gitlab-runner-14.0.1-1.x86_64
container-selinux-2.119.2-1.911c772.el7_8.noarch Kernel: $ uname -r
3.10.0-1160.25.1.el7.x86_64 OS Details: Red Hat Enterprise Linux Server release 7.9 (Maipo) We have a GitLab runner where everyone can run jobs internally using GitLab using specific tags. GitLab runner project supports docker as a container platform. Podman is not yet supported, however, Red Hat and GitLab working together to add Important:
Problem StatementOne of our customers would like to build the docker images using Steps to reproduce
|
Related to #3263. |
@giuseppe is this one of the new flags being added when it shoud not? |
could be a dup of containers/fuse-overlayfs#311 |
I've just tried with buildah 1.23 from Fedora and I cannot reproduce the issue:
|
Hi @giuseppe iiuc, you are passing through /var/libcontainers from the host, which means it will not be hosted on overlayfs? |
I updated the reproducer to FC35 at https://gitlab.com/cki-project/experimental/buildah-1-20-1-fc33-volume-issue-reproducer/-/jobs/2013629982, still failing (as expected). |
sorry I got confused by the reproducer here: #3281 (comment) Let me try without a volume |
I still cannot reproduce locally. I think you need a |
also, how is the |
for the fuse device, gitlab-runner uses privileged containers on single-use VMs in GCP. |
For FC35, storage.conf is present in /etc: https://gitlab.com/cki-project/experimental/buildah-1-20-1-fc33-volume-issue-reproducer/-/jobs/2014667559#L342 |
As another data point, moving /var/lib/containers to ext4 via a symlink to /builds (which is a docker volume on GitLab jobs) fixes the FC35 failure: https://gitlab.com/cki-project/experimental/buildah-1-20-1-fc33-volume-issue-reproducer/-/jobs/2014709415 |
pass down the graph options to the chroot backend, so that if the storage driver is configured to use a mount program for overlay, it is honored for volumes as well. Closes: containers#3281 Signed-off-by: Giuseppe Scrivano <[email protected]>
thanks, I think I see what is going on. Opened a PR: #3750 |
pass down the graph options to the chroot backend, so that if the storage driver is configured to use a mount program for overlay, it is honored for volumes as well. Closes: containers#3281 Signed-off-by: Giuseppe Scrivano <[email protected]>
pass down the graph options to the chroot backend, so that if the storage driver is configured to use a mount program for overlay, it is honored for volumes as well. Closes: containers#3281 Signed-off-by: Giuseppe Scrivano <[email protected]>
pass down the graph options to the chroot backend, so that if the storage driver is configured to use a mount program for overlay, it is honored for volumes as well. Closes: containers#3281 Signed-off-by: Giuseppe Scrivano <[email protected]>
if a mountProgram is specified, use it also in rootfull mode. Closes: containers#3281 Signed-off-by: Giuseppe Scrivano <[email protected]>
if a mountProgram is specified, use it also in rootfull mode. Closes: containers#3281 [NO NEW TESTS NEEDED] Signed-off-by: Giuseppe Scrivano <[email protected]>
When running buildah in GitLab CI (docker), using RUN after VOLUME fails since buildah 1.20.1.
Dockerfile:
Reproducer: https://gitlab.com/cki-project/experimental/buildah-1-20-1-fc33-volume-issue-reproducer
Works/fails (https://gitlab.com/cki-project/experimental/buildah-1-20-1-fc33-volume-issue-reproducer/-/pipelines/314126067):
The important difference between the 1.21.0 quay.io image and the plain fedora:34 seems to be the /var/lib/containers volume (https://quay.io/repository/buildah/stable/manifest/sha256:da34723916c0b53186230af839ff339c6a4f4857ca54c1984e6e927fb4100478). This causes /var/lib/containers to be backed by ext4 (GitLab/docker) instead of the root overlayfs.
Without the volume, the error message is (registry.fedoraproject.org/fedora:34 with 1.21.0, from https://gitlab.com/cki-project/experimental/buildah-1-20-1-fc33-volume-issue-reproducer/-/jobs/1314718416#L331):
Originally posted by @inakimalerba in #3153 (comment)
The text was updated successfully, but these errors were encountered: