-
Notifications
You must be signed in to change notification settings - Fork 152
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
Permission denied when creating workers. Rootfs. #27
Comments
I still have the issue. Tried as @sam701 describes in preparing rootfs caused "permission denied" #2892. Made no difference. Anyone? My setup is:
Thank you. |
Setting $CONCOURSE_BAGGAGECLAIM_DRIVER to |
Interestingly, when I set $CONCOURSE_BAGGAGECLAIM_DRIVER to
|
I do have an |
Hmm, I don't know of any silver bullet for this as kernel errors can be hard to track down, especially with modified kernels. 😕 Have you been able to try this on a vanilla Linux kernel? This may be too big of an ask for production, since I'm assuming you have your reasons for using that kernel, but for the sake of debugging that seems to me like the most obvious variable to change. We've seen problems on 'variant' kernels before (namely Google's Container-Optimized OS) because they sometimes strip out features that Concourse needs for containerization (possibly even just nested containerization, since it seems like your outer Docker host is working fine). |
Hi @vito, Thank you for replying to the post. Yeah I can imagine that this issue is quite hard. At the same time I think you are onto something in regards to it being something in the kernel not being enabled. I think I'll wait on them and update this case as the QNAP support case progresses. Thank you. |
I'm back againg. I'm growing pretty tired of the support I kinda get from QNAP support. So I was thinking if with a bit of assistance could troubleshoot into why this happens more specifically. Get to the root cause. @vito would you by chance have any ideas? Or anybode else? Thank you very much. |
@larssb Sorry, no ideas here, but maybe others have had experience with Docker/runC/containers in general on QNAP and maybe ran into the same problem? It likely has something to do with user namespaces. |
@larssb which version did you downgrade to? I'm on 4.2.2 on Oracle Linux with UEK R4 Kernel, and I can get the worker to startup, but the same problem exists for me. {
"timestamp":"1550257062.072880745",
"source":"guardian",
"message":"guardian.api.garden-server.create.failed",
"log_level":2,
"data":{
"error":"runc run: exit status 1: container_linux.go:348: starting container process caused \"process_linux.go:402: container init caused \\\"rootfs_linux.go:46: preparing rootfs caused \\\\\\\"permission denied\\\\\\\"\\\"\"\n",
"request":{
"Handle":"ab1c8bbe-ec8f-4c41-7534-f10e081b5351",
"GraceTime":0,
"RootFSPath":"raw:///opt/concourse-ci/volumes/live/f3f53232-bd2a-428b-7cf6-925ea9e080c8/volume/rootfs",
"BindMounts":[
{
"src_path":"/opt/concourse-ci/volumes/live/450737c4-a993-4d97-517a-19e65ee902c1/volume",
"dst_path":"/scratch",
"mode":1
},
{
"src_path":"/opt/concourse-ci/volumes/live/00d9a1b3-8ff6-42cb-533f-4f35e70beab1/volume",
"dst_path":"/tmp/build/dadbfeaa",
"mode":1
}
],
"Network":"",
"Privileged":false,
"Limits":{
"bandwidth_limits":{},
"cpu_limits":{},
"disk_limits":{},
"memory_limits":{},
"pid_limits":{}
}
},
"session":"3.1.47"
}
} And I thought some people had the right ideas going in other threads, but I haven't seen any actual resolutions yet. However, if you're downgrading and it worked, which version did you downgrade to? |
Hi @predatorian3, I never downgraded. Do not want to do that. So I'm coldstarting Concourse on another machine, away from my QNAP, and running the jobs I need. However, I still want Concourse to work on my QNAP. The worker also starts for me. The issue happens when whatever job on a pipeline tries to fetch a resource, kickstart a task or the like. Then that error is thrown. QNAP ended up concluding that they cannot help me in this case. Something along the lines of; "we do not support 3rd party products", even though it works on so many other machines than the QNAP NAS I have. So what is one to do 👎 |
Not sure if this helps, but I got a similar error when deploying Concourse on Microk8s - in the end it was not a permission problem, but a runtime setting - once I set |
^this is likely due to changes in the kernel that guardian does not support. Similar to cgroupsv2 not being supported by guardian and the only solution being to switch to containerd or use cgroupsv1. I'm going to close this issue because it's very old and likely not relevant to other users anymore. Thanks for sharing the new info @robinhuiser |
Allow me to come back and chime in. It seems I've finally succeeded in solving this. The culprit being something along the following lines.
the most recent iteration of the err. is Trying one more debugging session on this and found it could potentially be around cgroups v1 being used. I ended up switching to use On the
With the above no error. Freaking awesome!
It sucks though that this is necessary as pretty much no isolation is left and the container is pretty insecure. |
Hopefully someone here can help me with this. I'm running ConcourseCI v4.2.1. Running it via docker-compose.
The version of Docker on the host is Docker version 17.09.1-ce. I can successfully setup Concourse. However, I get the following error in the tasks of the pipeline I have pushed:
TRIED:
worker
container is running inprivileged
mode. It is.to the
worker
container. It still fails.-- Found: Rootless containers don't work from unprivileged non-root Docker container (operation not permitted for mounting procfs) opencontainers/runc#1658
I can conclude that the host running docker is on a rather old Linux kernel. It is v4.2.8. However, I am on a kernel higher than the min. requirement. As mentioned on https://concourse-ci.org/install.html
Any help will be highly appreciated. Thank you.
The text was updated successfully, but these errors were encountered: