Is shinyproxy compatible with podman?
Opened this issue ยท 9 comments
Apparently RedHat 8 uses podman instead of docker. If docker is aliased to podman in this environment, is that all that is needed?
Hi
ShinyProxy does not support podman. The reason is that ShinyProxy talks directly with Docker using the Docker API and not using the Docker CLI.
Note that it is possible to install Docker on a RHEL 8/9 based system since Docker provides a proper repo for it: https://docs.docker.com/engine/install/centos/ . However, this may not be feasible when using a Red Hat supported version.
I'll keep this issue open as a feature request, but to be honest with you, I don't think we will implement support for podman in the near future.
Hi,
if this is still relevant we managed to make it work using:
- tcp instead of unix socket for podman daemon (launched by user account)
- running shinyproxy container with the option
proxy.docker.internal-networking
set tofalse
, leavingproxy.docker.url
to the default and passing the host network to the container .
The target host was a RHEL 8.6
Hi raulbla,
Still relevant with us. We've run into the same issue when trying to move to a new server using RHEL 8.7 and found out Docker was not supported.
Do you use keycloak or other authentication in your setup? Would you be able to provide examples of the config files you used to accomplish this?
Thanks in advance,
John
Hi raulbla,
Could you be more specific on how do you achieve use of tcp instead of unix socket for podman daemon (launched by user account) ... what exactly do you do ? What are the the right steps ?
Where do you specify proxy.docker.internal-networking proxy.docker.url values - in application.yml file ?
Hello @raulbla & @zack77789 i'm also in need of more detailed instructions.
Would be great if you share the settings in the config files you changed.
Thanks :-)
Sorry for late reply I do not check the account too frequently.
This is what worked so far:
Container application.yml
proxy:
title: Shiny Proxy
port: 8080
authentication: none
container-wait-time: 200000
my-apps-mode: inline
docker:
internal-networking: false
url: http://localhost:2375
On the system (starting rootless podman):
# Start the port - it can be done with systemd too
/usr/bin/podman system service -t 0 tcp:127.0.0.1:2375 &
podman run --rm --name shinyproxy -it --net host localhost/shinyproxy:latest
I hope this helps.
Regarding keycloak I have tested it with the bitnami implementation (https://hub.docker.com/r/bitnami/keycloak/) and by following the documentation it worked too.
As for the configuration I need to double check if I can share something meaningful.
Hi everyone ! This issue is relevant for us. We are working with RHEL9, and for security reasons we must stick with podman.
Hi all, we did test podman some time ago, but back then run into issues when communicating with the (Docker compatible) API of podman.
However, the recent 3.1.0 release of ShinyProxy uses a different Docker client library. Therefore, it might be that these issues are fixed now. If podman support is important for you, I suggest to test it with ShinyProxy 3.1.1. We are looking forward to you results!