-
Notifications
You must be signed in to change notification settings - Fork 22
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
Fedora Silverblue support? #16
Comments
If you cannot run a docker client in Fedora Silverblue then I think this will be blocked by #15... |
I currently have Docker as an overlay on Silverblue, and this is enough to get the (now deprecated) cockpit-docker add-on up and running, but it might not be working well enough for k3d. (I guess it isn't.) There's the whole cgroups v1 vs. v2 issue, which may be problematic with Docker (Moby) still. |
$ k3d cluster create mycluster
ERRO[0000] Failed to list containers
ERRO[0000] Failed to get nodes for cluster 'mycluster'
ERRO[0000] Failed to list docker networks
ERRO[0000] Failed to create cluster network
ERRO[0000] Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Get "http://%2Fvar%2Frun%2Fdocker.sock/v1.24/networks?filters=%7B%22name%22%3A%7B%22k3d-mycluster%22%3Atrue%7D%7D": dial unix /var/run/docker.sock: connect: permission denied
ERRO[0000] Failed to create cluster >>> Rolling Back
INFO[0000] Deleting cluster 'mycluster'
ERRO[0000] Failed to delete container ''
WARN[0000] Failed to delete node '': Try to delete it manually
INFO[0000] Deleting cluster network 'k3d-mycluster'
WARN[0000] Failed to delete cluster network 'k3d-mycluster': 'Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Delete "http://%2Fvar%2Frun%2Fdocker.sock/v1.24/networks/k3d-mycluster": dial unix /var/run/docker.sock: connect: permission denied'
ERRO[0000] Failed to delete 1 nodes: Try to delete them manually
FATA[0000] Cluster creation FAILED, also FAILED to rollback changes! With sudo: $ sudo k3d cluster create mycluster
INFO[0000] Created network 'k3d-mycluster'
INFO[0000] Created volume 'k3d-mycluster-images'
INFO[0001] Creating node 'k3d-mycluster-server-0'
INFO[0002] Pulling image 'docker.io/rancher/k3s:v1.18.6-k3s1'
ERRO[0014] Failed to start container
ERRO[0014] Failed to create node 'k3d-mycluster-server-0'
ERRO[0014] Failed to create node
ERRO[0014] Error response from daemon: OCI runtime create failed: this version of runc doesn't work on cgroups v2: unknown
ERRO[0014] Failed to create cluster >>> Rolling Back
INFO[0014] Deleting cluster 'mycluster'
INFO[0014] Deleted k3d-mycluster-server-0
INFO[0014] Deleting cluster network '59275b244928c7f7aea159077836aeb0a607f666567dff29800eafc6b8f6de5e'
FATA[0014] Cluster creation FAILED, all changes have been rolled back! And here's a basic docker command: sudo docker run -it fedora
Unable to find image 'fedora:latest' locally
latest: Pulling from library/fedora
c7def56d621e: Pull complete
Digest: sha256:d6a6d60fda1b22b6d5fe3c3b2abe2554b60432b7b215adc11a2b5fae16f50188
Status: Downloaded newer image for fedora:latest
docker: Error response from daemon: OCI runtime create failed: this version of runc doesn't work on cgroups v2: unknown.
ERRO[0019] error waiting for container: context canceled Docker does look like it's having issues on cgroups v2 and that is what's fouling up k3d. And k3d needs root access, which k3x in Flatpak doesn't have, right? Anyway, I guess we just need to wait for k3d to get podman support and then hopefully everything will "magically" work, even on cgroups v2, possibly even rootless. 😁 |
Not sure how things work in Silverblue, but you would need to be part of the right group for accessing But besides that, this |
Running Docker in Silverblue is basically called |
Yeah, but the important thing here would be to have a Docker-like API that the go docker client library could use. AFAIK, podman does not provide this, so it think it will not be possible to add support for podman in the near future. The solution I was proposing was to run the real-thing in Silverblue, but I don't know if that is possible or not... |
Podman does actually provide a Docker-like API in Podman 2.0. https://podman.io/blogs/2020/07/01/rest-versioning.html I think the API docs have the docker-compatible API under "compat" @ https://docs.podman.io/en/latest/_static/api.html (podman also has its own API to do additional things like handle pods) I saw in a comment elswhere on GitHub that getting a podman service up an running is as running: podman system service --time=0 &
export DOCKER_HOST=unix:/$XDG_RUNTIME_DIR/podman/podman.sock That's for running podman without requiring root (in a user session), as it references For system containers, it's: sudo podman system service --time=0 &
export DOCKER_HOST=unix:/run/podman/podman.sock To start up the service and specify a special URI, such as the Docker URI:
I found out some of this in the docs for Additionally, I saw someone say that installing the |
Thanks for the clarification @garrett. Maybe it would be worth adding all this information in the |
@inercia: Thanks! Right, it should be talked about there. I copy/pasted/edited the comment to move it there. Additionally, while podman support might just get Silverblue support working, there might be some additional issues due to the immutable filesystem and perhaps not having system packages. In other words, solving podman support will probably solve Silverblue support (but not ncessarily). That's why I opened up multiple issues. We could close this one and just assume podman support will make it on Silverblue or keep both open until we see what happens with podman. Thanks again for your effort for on k3x and these issues! (I'm looking forward to being able to try it out someday.) |
I got this same traceback on Fedora Kinoite (Silverblue KDE) 35 running under moby-engine. It is most certainly not due to podman or a cgroups problem as shown below:
|
Silverblue doesn't have a "normal" package manager. All installations are the same. One can "overlay" RPMs (and their dependencies), but most of the time, all the work happens in Flatpaks and podman containers (especially toolbox containers, which are a special type of long-term podman contaner that simulates a standard Fedora installation, with dnf/yum and so on).
What's probably needed is to have podman support (#15) and ensure that nothing else is needed from the host system.
The text was updated successfully, but these errors were encountered: