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
cap_set_file not permitted on aufs storage driver only #6980
Comments
|
@jakedt Can you please paste the output of |
|
Sure thing! Of course the storage driver is just the one I happen to use by default. |
|
Ping @crosbymichael @vieux |
|
This topic is already blogged (and from the blog post also communicated to the docker dev team): http://major.io/2014/03/26/docker-trusted-builds-and-fedora-20/ meanwhile, I'm too still searching for a way to install httpd on a centos based docker image... iputils (installed when you try to install the development package group) has the same issue |
|
@henning feel free to contribute to the upstream docs, so that the wider Docker community can benefit. |
|
@shykes: not clear what you mean, but sure, as soon as i have a solution or |
|
Some more research:
Next thing I'll try is checking if there's any different behaviour when running docker on an centos7 host. |
|
Just encountered this, it is breaking my "FROM centos" Dockerfiles after upgrading to current boot2docker. Not sure what the best fix is (using --privileged didn't help), so for now I changed my "FROM centos" to "FROM centos:centos6". |
|
same for me, xorg-x11-fonts-Type1.noarch 0:7.5-9.el7 Failed: Complete! |
|
From looking into this it appears to be an AUFS specific bug which means fixing it requires patching AUFS and recompiling the kernel. I suggest using BTRFS or devicemapper instead because we really have nothing to change in docker to fix this issue. @unclejack thoughts? |
|
i'm having the same issue as @jamshid abd @jaenswart - coud this is a bug in centos7 itself caused by a recent update. a co-worker didn't have this problem against a centos7 image from ~5-6 (maybe a little more/less) weeks ago but he now sees this after a 'docker pull centos'. centos6 doesn't seem to exhibit this issue. |
|
I see no way around this problem when my host system is Ubuntu 14.04 (both physical and a VM). However it works fine in a CentOS 7 VM host system. So, doing the I see the problem when doing a "yum update" in a CentOS 7 docker image, such as: I only see errors on Ubuntu host systems. The error messages (amidst a bunch of output from Once I've created a CentOS 7 image on a CentOS 7 host system, I can use the image just fine on Ubuntu, so long as I don't need to do a further |
|
I have same problem, my host system is |
|
@crosbymichael is right. AUFS is the problem. I had a "solution" (workaround) on debian and maybe ubuntu... Export your images and/or containers (because they will be unaccessibles unless you revert the following instructions) Open "/etc/default/docker" and set DOCKER_OPTS with Then relaunch docker service Now, Docker is using devicemapper and not AUFS, that should stop to complain with yum and httpd (or other problem with cap_set_file). I was able to retrieve my images and containers by removing the modification in /etc/default/docker and restarting docker service. I guess that this modification can be dagerous, so please make images and containers backups before to test. Now... who can manage this bug ? docker team ? AUFS team ? |
|
I do see the same issue when trying to install httpd in a centos container though my docker runs using devicemapper as storage backend: [root@30b87986efbd ~]# yum -y install httpd breuerma@data ~ $ docker info breuerma@data ~ $ docker version OS is gentoo. |
|
I used to have same issue but with librsvg2-tools. The problem has been solved by removing all centos and re-create app images from scratch. |
|
The other solution I will use from now: not use Debian as host. My other server that is a CentOS server has no problem to use debian, centos or other images/containers + installation. |
|
I use Debian + BTRFS, and it works swell. ;) |
|
I feel the troll coming behind me ;) BTW: yes, I will deeply try BTRFS in next weeks |
|
@metal3d you can also use devicemapper on debian - that way its the same as your centos default. |
|
@SvenDowideit This is exactly what I said 2 comments earlier ;) #issuecomment-62723470 Le Thu Nov 27 2014 at 07:21:42, Sven Dowideit notifications@github.com a
|
|
@metal3d ah - that makes your comment in #6980 (comment) that your solution was not to use debian even more confusing. |
|
Yes, my other comment was for @fogfish that removes the whole centos containers. That was for trolling ;) I consider that removing containers that use CentOS because Debian cannot use them is a worse solution than removing Debian host. |
|
No trolling here :) I have not meet an issue with cap_set_file at production (container runs on top of AWS Linux, which is derived from CentOS) but cap_set_file have ruined my development environment. I am using Boot2Docker on MacOS, it uses CentOS as host. I've tried to build a container with librsvg2-tools. The container was derived from centos:latest. The build procedure failed with same reason as described above. The quick fix was to clean up cache and remove all centos:latest images and all derived image from my dev env cache, after that problem with cap_set_file magically disapperars once latest centos was downloaded). BTW, dev uses aufs but prod is dev-mapper. I guess dev-mapper is the way to address this issue like it was suggested. |
|
@fogfish that was me who was trolling :) I was joking. |
|
Ok, I see the problem here as well. What's the solution again for CentOS 7? Are you guys saying switch to the slower dev-mapper? THAT'S a solution?!?! Come on, how to solve this without switching to dev-mapper? I need CentOS 7. Solutions please! Thanks! |
|
overlayfs is being merged in Docker 1.4 and the 3.18 kernel, this would On Wed, Dec 3, 2014 at 2:06 AM, hwongcom notifications@github.com wrote:
|
|
This happens on Docker's own infrastructure, when using Automated Builds; see here for example. Changing the local Build Host or storage driver seems like a poor workaround, since it only enables one to build the image locally. |
|
@The-Judge have you contacted support@docker.com for that? Perhaps the support team for docker hub can look into that |
|
Same problem here so it seems (client version 1.10.1). Trying to get a grip of what's going on ― What does it mean:
Doesn't docker use aufs by default?
― as per the workaround suggested above, what are the overall ramifications of switching docker to devicemapper? |
|
@matanster see the storage driver section of the docs for more in-depth information on the differences between drivers https://docs.docker.com/engine/userguide/storagedriver/imagesandcontainers/ |
|
+1 , centos:7 container on a ubuntu 15.10 host |
|
This problem isn't fixed in ubuntu 16.04. |
|
I've also seen the problem building a centos:7 image on an ubuntu 16.04 host. To use the devicemapper workaround on 16.04 you can do the following
Edit /lib/systemd/system/docker.service to add reload the service file
start docker
|
|
docker/hub-feedback#461 In this thread solves the problem |
|
This issue went away for me when I upgraded to Ubuntu 16.04.1 and rebooted. |
|
Has anybody here tested the workaround from docker/hub-feedback#461 (comment) ?
|
When running this minimal Dockerfile:
The following error occurs only when using the aufs storage driver:
When running with the devicemapper driver the command succeeds successfully. The capabilities listed for the process are identical under both storage drivers and include
CAP_SETFCAPandCAP_FOWNERwhich are listed byset_cap_fileas requirements.Here is the full list of capabilities which both processes have:
The text was updated successfully, but these errors were encountered: