-
Notifications
You must be signed in to change notification settings - Fork 70
Dockerhub image from linuxserver works with runc but not cc-runtime #986
Comments
Let's start with an ack - I can re-create the issue here as well.
I'm going to look into how we check out and track the port mappings both in the container (which might mean we have to enable the VM OS debug shell), and on the host side (which might mean digging into docker namespaces). @sboeuf @amshinde - any ideas from your side around the agent/networking/port mapping side? |
@grahamwhaley no idea on the top of my head, this needs further investigations. |
Hi @eadamsintel - please can you:
|
I'm having a peek at this btw... |
OK, some more info.
whereas we don't with If you run the docker command with
prompt appearing over and over. I suspect therefore that something is upsetting and/or not working for the |
Not sure how much this is going to help somebody (I have yet to digest it), but...
Then I end up with:
ah, ok, that is a 'database fail' on /config, which smells like 9pfs issues to me... let's try...
to place the db on a tmpfs (ramfs) in the container - and - voila - we don't get the catastrophic failure, and I can browse the container on 7878. /cc @eadamsintel - I think there is the root of the issue ;-) |
@grahamwhaley oh nice and quick debug ! |
:-( I'd have to take the next step in debug to be decisive - we'd have to know exactly what failed with the 9pfs mounted files - I suspect it will be one of the 'unlink' related issues. Normally I use strace to find that, but for mono, which is a JIT'd VM, I wonder how well that will work? :-) Short term, at least we know what the problem is. |
@grahamwhaley using devmapper might solve this issue then (unless the file that needs to be accessed is passed through 9p as an extra mount on top of the rootfs). |
yeah, I considered that - it is a |
Oh yeah... I haven't realized this was a |
@grahamwhaley Yes the Maybe we can try this out, loopmount an image and pass the loop device as |
That's an idea @amshinde - hmm, I wonder if that is viable as an interim 'hack' to mount volumes into the VMs as block devices, by a loopback and device mount. It's worth a try to see if it does work and fixes the issue initially anyhow... I'll add it to my list. |
This should work but don't expect good performances. |
When testing a popular docker hub image called linuxserver/radarr (10 million pulls) you can't connect to port 7878 from a browser when using cc-runtime but runc works as expected.
First create a config directory at /config
mkdir /config
Run the container and attempt to go to http://:7878 and it works under runc but won't connect under cc-runtime.
docker run -d --runtime=runc --name=radarr -v /config:/config -p 7878:7878 linuxserver/radarr
This works and you can go to http://localhost:7878
docker run -d --runtime=cc-runtime --name=radarr -v /config:/config -p 7878:7878 linuxserver/radarr
This does not work and http://localhost:7878 times out
Trying the same thing with an nginx container works fine but the nginx container monitors port 80 but passing in 7878 as the host port to use still works.
cc-runtime version 3.0.16
runc version 1.0.0-rc4+dev
docker version 17.09.1
Clear Linux version 20650
The text was updated successfully, but these errors were encountered: