Coder Social home page Coder Social logo

Docker Engine v 25.0 API now returns virtualSize null when enumerating Images, which means containerized shinyproxy cannot start containers after docker engine upgrade to v 25.0 about shinyproxy HOT 11 CLOSED

mskyttner avatar mskyttner commented on August 25, 2024 16
Docker Engine v 25.0 API now returns virtualSize null when enumerating Images, which means containerized shinyproxy cannot start containers after docker engine upgrade to v 25.0

from shinyproxy.

Comments (11)

LEDfan avatar LEDfan commented on August 25, 2024 8

Hi
Thanks for reporting this. As part of the next release, we planned to use an up to date fork of the Spotify docker client. For example, https://github.com/dmandalidis/docker-client/ . We will test whether this versions works with the latest docker version, or otherwise create a PR to fix it. So this issue will definitely be solved in the next release.

from shinyproxy.

LEDfan avatar LEDfan commented on August 25, 2024 7

Hi, this is now part of the ShinyProxy 3.1.0 we released today. Thanks again for reporting this issue!

from shinyproxy.

mskyttner avatar mskyttner commented on August 25, 2024 6

It seems that if I roll back Docker Engine to use API v 24, things are working again. This varies by platform, but I used this command to see which engine versions were available:

apt-cache madison docker-ce | awk '{ print $3 }'

I then picked the latest one that was still lower than v 25:

VERSION_STRING=5:24.0.0-1~ubuntu.22.04~jammy
sudo apt-get install docker-ce=$VERSION_STRING docker-ce-cli=$VERSION_STRING containerd.io docker-buildx-plugin docker-compose-plugin

The containerized shinyproxy services are now running again, which seems to confirm that shinyproxy v 3.0.2 does not (yet) speak docker engine v 25 engine API (v 1.44) (?)

from shinyproxy.

eastclintw00d avatar eastclintw00d commented on August 25, 2024 5

@LEDfan Can you please give a status update on this issue? Will there be a solution for the docker v25 engine, anytime soon?

from shinyproxy.

tverbeke avatar tverbeke commented on August 25, 2024 3

@LEDfan Can you please give a status update on this issue? Will there be a solution for the docker v25 engine, anytime soon?

@eastclintw00d: we are working hard on a new release that will - amongst many other things - include a solution. If you want predictable times for issues to be fixed, you can always subscribe to a ShinyProxy support contract.

from shinyproxy.

jkh1 avatar jkh1 commented on August 25, 2024 2

Or in my case, simply 😃

sudo yum downgrade docker-ce-24.0.9-1.el8 docker-ce-cli-24.0.9-1.el8
sudo systemctl restart docker

from shinyproxy.

mskyttner avatar mskyttner commented on August 25, 2024

That library also seems to require a patch from the same reason it seems as it currently would not be able to enumerate images without a null pointer exception if docker engine v 25 or later is in play, judging from the latest PR there.

I guess it means that any systems that (automatically?) upgrade their docker engine would likely see that any shinyproxy services would stop working (when reading from the engine API over a unix socket ie docker engine api v 1.44).

So pinning or holding the docker packages is how I try to work around the issue currently. For example, on a linux system (ubuntu focal w docker ce):

# use commands such as these to discover available docker engine package versions on the host
apt policy containerd.io docker-ce docker-ce-cli docker-compose-plugin docker-buildx-plugin docker-ce-rootless-extras 
apt-cache madison docker-ce

# then create three files to pin the docker packages on the host 
# to the latest working version before v docker engine v 25

more /etc/apt/preferences.d/docker*

::::::::::::::
/etc/apt/preferences.d/docker-ce
::::::::::::::
Package: docker-ce
Pin: version 5:24.0.7-1~ubuntu.20.04~focal
Pin-Priority: 1001

::::::::::::::
/etc/apt/preferences.d/docker-ce-cli
::::::::::::::
Package: docker-ce-cli
Pin: version 5:24.0.7-1~ubuntu.20.04~focal
Pin-Priority: 1001
::::::::::::::
/etc/apt/preferences.d/docker-ce-rootless-extras
::::::::::::::
Package: docker-ce-rootless-extras
Pin: version 5:24.0.7-1~ubuntu.20.04~focal
Pin-Priority: 1001

from shinyproxy.

jkh1 avatar jkh1 commented on August 25, 2024

I have a VM with docker v25.0 and two instances of shinyproxy, one v3.0.2 and one v2.6.1. The former doesn't work with the error reported above while the later runs fine. So a temporary solution could be to downgrade either docker or shinyproxy.

from shinyproxy.

syedalizaib avatar syedalizaib commented on August 25, 2024

I was facing the same issue on RHEL 9. Rolling back the docker version to 24.x.x worked for me. 👍

sudo yum remove docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin docker-ce-rootless-extras

sudo rm -rf /var/lib/docker

sudo rm -rf /var/lib/containerd

sudo yum install -y yum-utils

sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

sudo yum install docker-ce-3:24.0.7-1.el9 docker-ce-cli-1:24.0.7-1.el9 containerd.io docker-buildx-plugin docker-compose-plugin

sudo systemctl start docker

from shinyproxy.

ChristianRohde avatar ChristianRohde commented on August 25, 2024

Hi, I think I have the same problem. I already downgraded from Docker v25 to Docker version 24.0.9, build 2936816. So far no docker image was loading in shinyproxy, although I am able to run it from docker command line without any problem. Please find my log attached. shinyproxy.log

How can I check if shinyproxy connects to docker? I have no idea how to continue troubleshooting otherwise.

Best,
Christian

from shinyproxy.

mskyttner avatar mskyttner commented on August 25, 2024

I think you can see events in docker with docker system events command so that log should come to life as shinyproxy starts up, I guess.

Not sure, but it could potentially be something else? For " java.lang.IllegalArgumentException: Schema specific part is opaque", a search turns up an old post where it seems like an ip:port setting is causing an error like that if used where an setting starting with the http_scheme is expected (http|https)... For example the setting is "{some_ip}:443" instead of "https://something.somewhere".

Perhaps the application.yaml file could give more clues and maybe there is someone over at the support forum that might have an idea.

from shinyproxy.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.