Skip to content
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

Unable to retrieve image details or access container console after update of Docker to v26 #11436

Closed
2 tasks done
pawnar29 opened this issue Mar 20, 2024 · 178 comments · Fixed by #11468
Closed
2 tasks done
Assignees

Comments

@pawnar29
Copy link

pawnar29 commented Mar 20, 2024

EDIT FOR TLDR (April 5, 2024)

Portainer 2.20.3 has now been released, which includes a fix for these issues under Docker 26 and above. We recommend updating to 2.20.3 if you need to use Docker 26 or above.


Original report

Before you start please confirm the following.

Problem Description

Inability to see image information and to use container consoles.

Expected Behavior

Image info is accessible and container consoles are functional

Actual Behavior

Clicking on an image causes the error message "Error Unable to retrieve image details" and clicking on container consoles also produce this same error.

Steps to Reproduce

  1. SSH into host server
  2. apt update && apt upgrade
  3. (Update updates docker-ce alongside any dependencies)

Portainer logs or screenshots

No response

Portainer version

2.19.4

Portainer Edition

Community Edition (CE)

Platform and Version

Docker 5:26.0.0-1ubuntu.20.04focal

OS and Architecture

Ubuntu 22.04

Browser

No response

What command did you use to deploy Portainer?

docker run -d -p 8000:8000 -p 9443:9443 --name portainer --restart=always -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer-ce:latest

Additional Information

Info seen online for this issue states to execute the following for recreating the portainer container:
docker run -d -p 8000:8000 -p 9443:9443 --name portainer --restart=always -v /var/run/docker.sock:/var/run/docker.sock portainer/portainer-ce:latest

This does not work, and the issue persists even after a reinstall of Ubuntu and reinstall of docker/portainer.

Only feasible fix is to rollback docker-ce version.

@xspio
Copy link

xspio commented Mar 21, 2024

Same here, it may be related to Docker Swarm 26.0.0

@jamescarppe
Copy link
Member

This is indeed an issue with Docker 26 compatibility - this version removed some functionality we rely on to display the image details. As Docker 26 has only just come out we were unable to test against it for any past releases, but I am discussing with the team as to our next steps.

@joe6602
Copy link

joe6602 commented Mar 21, 2024

Same issue when I click to access the console.

@reannu123
Copy link

Same here when accessing console for any container in Portainer BE

@skogsmaskin
Copy link

skogsmaskin commented Mar 21, 2024

Here as well.

  • Swarm 26.0.0
  • portainer/agent:2.19.4
  • portainer/portainer-ee:2.19.4

EDIT: saw your response now @jamescarppe, thank you.

@Meetch3
Copy link

Meetch3 commented Mar 21, 2024

and how do I revert the docker version? If not, how do I install a more stable version?

@jamescarppe
Copy link
Member

jamescarppe commented Mar 21, 2024

and how do I revert the docker version? If not, how do I install a more stable version?

Docker provides instructions for installing specific versions - these are the instructions for Ubuntu (select the Specific version tab in step 2) but there are other installation processes available for other distros. 25.0.5 is the most recent version in the version 25 release. For example, on a Ubuntu 20.04 server:

VERSION_STRING=5:25.0.5-1~ubuntu.20.04~focal
sudo apt-get install docker-ce=$VERSION_STRING docker-ce-cli=$VERSION_STRING containerd.io docker-buildx-plugin docker-compose-plugin

To identify the version strings available on your particular Ubuntu version, you can use:

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

Pick the most recent non-Docker 26 version string and proceed from there.

Note also that if you perform an apt upgrade after downgrading Docker like this, it will upgrade back to the latest version again. To prevent this you can pin Docker to the version you're running to prevent this from happening. As a superuser, create a file named /etc/apt/preferences.d/docker with the following content (replace the version string with yours):

Package: docker-ce*
Pin: version 5:25.0.5-1~ubuntu.22.04~jammy
Pin-Priority: 999

@StusBrainDump
Copy link

If you're running ubuntu 22.04, then set the version as follows.
VERSION_STRING=5:25.0.5-1ubuntu.22.04jammy

Rolling back makes console etc available again.

@canytam-krystal
Copy link

canytam-krystal commented Mar 22, 2024

For ubuntu 22.04, the correct version should be
VERSION_STRING=5:25.0.5-1~ubuntu.22.04~jammy

@kukki
Copy link

kukki commented Mar 22, 2024

I also spot that when I click on the image sha link in the images list page, it refreshes a bit and returns to the same list page.
I'm still using Debian 10 in my old server. Base on the info above, I revert to docker-ce v25 and confirm it works now.
sudo apt install docker-ce=5:25.0.5-1~debian.10~buster

@jarbelix
Copy link

I have AlmaLinux 8 as my OS. The instructions for downgrading are in the Specific version tab at https://docs.docker.com/engine/install/centos/

So I did it like this:

  dnf -y install docker-ce-25.0.5-1.el8 docker-ce-cli-25.0.5-1.el8

Then my Portainer Business Edition 2.19.4 the exec console started working again.

@Wootimize
Copy link

The same problem for Debian 12 - another one also when uploading Portaine with docker stack deploy -c portainer.yaml portaine message: (Since --detach=false was not specified, tasks will be created in the background. In a future release, --detach=false will become the default.) I worked around it with: docker stack deploy --detach=false -c portainer.yaml portainer

@evmolpos
Copy link

evmolpos commented Mar 22, 2024

Same problem here "Inability to see image information and to use container consoles" for Portainer BE (docker swarm) on Ubuntu 23.10

Portainer Business Edition 2.19.4

Client: Docker Engine - Community
Version: 26.0.0
API version: 1.45
Go version: go1.21.8
OS/Arch: linux/arm64
Context: swarm

Server: Docker Engine - Community
Engine:
Version: 26.0.0
API version: 1.45 (minimum version 1.24)
Go version: go1.21.8
Built: Wed Mar 20 15:18:02 2024
OS/Arch: linux/arm64
Experimental: false

@gsanchez2004
Copy link

gsanchez2004 commented Mar 22, 2024

Same issue here,

  1. Downgraded on Ubuntu 22.04 jammy to docker 25.0.5 by running :
VERSION_STRING=5:25.0.5-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
  1. Commented from /etc/apt/sources.list.d/docker.list the "deb [arch=amd64 signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu jammy stable" line

until issue solved or new version of docker to try.

@connor-morrison-mlmw
Copy link

Same issue here!

@truthsword
Copy link

truthsword commented Mar 22, 2024

Debian Bookworm here... no console access. Seems like the image update indicator (red/green) is also affected, as all containers are "green"... very unusual. To work around I did this (borrowing from ubuntu above):

VERSION_STRING=5:25.0.5-1~debian.12~bookworm
sudo apt install docker-ce=$VERSION_STRING docker-ce-cli=$VERSION_STRING docker-ce-rootless-extras=$VERSION_STRING containerd.io docker-buildx-plugin docker-compose-plugin
''' 

@erwinvr
Copy link

erwinvr commented Mar 23, 2024

same here:
debian 12 fresh install
Docker version 26.0.0, build 2ae903e
Portainer Business Edition 2.19.4

@ChrisR2023
Copy link

ChrisR2023 commented Mar 23, 2024

same here:
openmediavault --> compose --> nginx
openmediavault --> compose --> portainer
previously used portainer console to access nginx to rsync index.html file, but now no longer able to.

Now have to ssh into OMV and run:
chris@omv:~$ docker exec -it [container] /bin/bash
I then do the rsync from within the container.

@Error00101
Copy link

Error00101 commented Mar 23, 2024

Have the same problem but only when connected to the x86 version of the agent on my machines (1 ARM / 1 x86_64).

Versions:
Portainer CE 2.19.4 - (Running on the ARM Server but connected through the Agent)
Agent v 2.19.4 - (Same on all machines)

ARM Server:
Ubuntu 23.10
Docker 25.0.2

x86 Server:
Ubuntu 22.04.4
Docker 26.0.0

@Mittlebenskrise
Copy link

Same problem here. Any ETA by when we can expect a fix? It's quite annoying to not be able to get into a container's shell from the browser. 😉

@braymullo
Copy link

For now I have downgraded to docker 25.0.5 by apt removing and auto cleaning docker. Then using dockers install script with the —version tag. Then commenting out docker from its sources.list.d until there’s a fix

@manyaOnIsle
Copy link

manyaOnIsle commented Mar 23, 2024

For now I have downgraded using following command and i am back in business. Will not upgrade these 3 packages until i see a fix here.
sudo apt-get install docker-ce=5:25.0.5-1~raspbian.11~bullseye docker-ce-cli=5:25.0.5-1~raspbian.11~bullseye docker-ce-rootless-extras=5:25.0.5-1~raspbian.11~bullseye

@Fooose
Copy link

Fooose commented Mar 23, 2024

same here:

debian 12
Docker version 26.0.0, build 2ae903e
Portainer Business Edition 2.19.4

@wdsgn
Copy link

wdsgn commented Mar 23, 2024

I also spot that when I click on the image sha link in the images list page, it refreshes a bit and returns to the same list page. I'm still using Debian 10 in my old server. Base on the info above, I revert to docker-ce v25 and confirm it works now. sudo apt install docker-ce=5:25.0.5-1~debian.10~buster

This one did the job for my version of debian:

sudo apt install --allow-downgrades docker-ce=5:25.0.5-1~debian.11~bullseye

@Fooose
Copy link

Fooose commented Mar 23, 2024

I also spot that when I click on the image sha link in the images list page, it refreshes a bit and returns to the same list page. I'm still using Debian 10 in my old server. Base on the info above, I revert to docker-ce v25 and confirm it works now. sudo apt install docker-ce=5:25.0.5-1~debian.10~buster

This one did the job for my version of debian:

sudo apt install --allow-downgrades docker-ce=5:25.0.5-1~debian.11~bullseye

big thanks, it works!
sudo apt install --allow-downgrades docker-ce=5:25.0.5-1~debian.12~bookworm

@jinn8522
Copy link

jinn8522 commented Mar 23, 2024

for ubuntu 23.10 the command below works:

VERSION_STRING=5:25.0.5-1~ubuntu.23.10~mantic
sudo apt install docker-ce=$VERSION_STRING docker-ce-cli=$VERSION_STRING docker-ce-rootless-extras=$VERSION_STRING containerd.io docker-buildx-plugin docker-compose-plugin

@mike7seven
Copy link

mike7seven commented Mar 23, 2024

Commenting to help others and to get visibility to quickly fix this issue.

For Ubuntu 20.04 Focal Fossa use this command to fix the issue by downgrading docker

VERSION_STRING=5:25.0.5-1~ubuntu.20.04~focal sudo apt install docker-ce=$VERSION_STRING docker-ce-cli=$VERSION_STRING docker-ce-rootless-extras=$VERSION_STRING containerd.io docker-buildx-plugin docker-compose-plugin

As others have suggested commenting out docker from the sources.list until there’s a fix may be a good idea since any time you run an apt update or apt-get update this will update docker again.

Alternatively you can set a hold on the packages by running "sudo apt-mark hold docker-ce docker-ce-cli docker-ce-rootless-extras containerd.io docker-buildx-plugin docker-compose-plugin"

To undo the hold run "sudo apt-mark unhold docker-ce docker-ce-cli docker-ce-rootless-extras containerd.io docker-buildx-plugin docker-compose-plugin"

@ChrisR2023
Copy link

same here:
openmediavault --> compose --> nginx
openmediavault --> compose --> portainer
previously used portainer console to access nginx to rsync index.html file, but now no longer able to.

Now have to ssh into OMV and run:
chris@omv:~$ docker exec -it [nginx container ID] /bin/bash
I then do the rsync from within the container.

@jamescarppe
Copy link
Member

@jamescarppe Still getting the same issue with Portainer v2.20.3 and Docker 27.0.2, I hope this will be sorted out in the upcoming v2.21

As mentioned in this thread already, clear your browser cache fully and this should resolve.

@SponsorAds
Copy link

SponsorAds commented Jul 15, 2024

I'm using :latest with Docker 27.0.3 (3 new servers setup in the last week). It is clearly still not working for me and it obviously is not a cache issue.

@avatar7008
Copy link

@SponsorAds don't use latest, use 2.20.3 as described here

@Schattenruf
Copy link

Schattenruf commented Jul 19, 2024

@avatar7008 same problem for me. I cleared cache and tried it on a brand new laptop where the site was never open. Problem still persists.

Client: Docker Engine - Community
 Version:           27.0.3
 API version:       1.46
 Go version:        go1.21.11
 Git commit:        7d4bcd8
 Built:             Sat Jun 29 00:02:50 2024
 OS/Arch:           linux/amd64
 Context:           default

Server: Docker Engine - Community
 Engine:
  Version:          27.0.3
  API version:      1.46 (minimum version 1.24)
  Go version:       go1.21.11
  Git commit:       662f78c
  Built:            Sat Jun 29 00:02:50 2024
  OS/Arch:          linux/amd64
  Experimental:     false
 containerd:
  Version:          1.7.19
  GitCommit:        2bf793ef6dc9a18e00cb12efb64355c2c9d5eb41
 runc:
  Version:          1.7.19
  GitCommit:        v1.1.13-0-g58aa920
 docker-init:
  Version:          0.19.0
  GitCommit:        de40ad0

Portainer has version 2.20.3.

@ewoks
Copy link

ewoks commented Jul 21, 2024

just to make it clear for everyone (including myself):

  • latest is pointing to lts (currently 2.19.5), alternative is sts tag (currently 2.20.3)
  • error unable to retrieve image details is due to the fact that docker v27.y.z removed some capabilities; so whichever portainer version we use, the only way to see image details at this moment is to go back to docker v26.y.z
    Screenshot from 2024-07-21 11-00-36

correct @jamescarppe (especially 2nd point) ?

@felipewnp
Copy link

Why is this issue closed??

@jmessy919
Copy link

Like @felipewnp, I still have this issue with the latest Portainer release. I have created a stack from Docker Hub (Nginx Proxy Manager), and whether I click Console or Attach in the Stack/Container, I get the same error mentioned in this issue. This issue affects all Stacks & Containers I currently have running, no matter how they were added to my Portainer instance.

image

@corasaniti
Copy link

@jmessy919
You must use the Docker 2.20.3 or sts tag. I'm observing that you are still using version 2.19.5
You also need to make sure you clear your browser cache
Thanks

@jmessy919
Copy link

Thanks @corasaniti - didn't know it wasn't yet pushed to the latest tag. I learned something new, and after applying the sts tag instead, everything works as intended. Cheers.

@NikolozCh
Copy link

Thank you @corasaniti. sts tag worked like a charm.

Also, I want to ask for a favor to Portanier team. Can you guys please update YML files referenced inside the official guideline "Install Portainer CE with Docker on Linux"?

This will save others' time. Thanks

@jamescarppe
Copy link
Member

Also, I want to ask for a favor to Portanier team. Can you guys please update YML files referenced inside the official guideline "Install Portainer CE with Docker on Linux"?

The documentation you have linked is for 2.19. For 2.20 documentation, you can use the version dropdown at the top of the documentation page to select the 2.20 documentation, or go to https://docs.portainer.io/v/2.20.

The default documentation version displayed corresponds to the most recent non-STS version, which at present is 2.19. When 2.21 LTS is released, the default documentation will be updated to point to that version's documentation.

@ewoks
Copy link

ewoks commented Jul 27, 2024

@jamescarppe could you please address my question here please?
that still doesn't work on the latest sts

@jamescarppe
Copy link
Member

  • error unable to retrieve image details is due to the fact that docker v27.y.z removed some capabilities; so whichever portainer version we use, the only way to see image details at this moment is to go back to docker v26.y.z

I am running Portainer 2.20.3 on Docker 27.0.3 and do not have this issue. The change that caused this was in Docker 26, and the fix applies to versions 26 and above, including 27. Make sure you clear your browser cache / local storage, and/or try from another browser or incognito.

@mrmoghadasi
Copy link

@jamescarppe
Hello james
I'm also experiencing this issue after upgrading Docker to version 27.1.0.

Due to the security vulnerability CVE-2024-41110, I was forced to upgrade to version 27.1.0. Currently, I'm having trouble accessing the console and images through Portainer.

Portainer version
2.16.2

Portainer Edition
Business Edition (BE)

Docker version:
27.1.0

@jamescarppe
Copy link
Member

As has already been mentioned in this thread, and is displayed at the top of the original issue:

Portainer 2.20.3 has now been released, which includes a fix for these issues under Docker 26 and above. We recommend updating to 2.20.3 if you need to use Docker 26 or above.

Update to 2.20.3 and clear your browser cache.

@Zecaspider
Copy link

Zecaspider commented Jul 31, 2024

No meu caso tenho o docker 27. E o ubuntu 22.4
Actualizei o portainer para a 2.20.3
Limpei o cache do navegador.
E voltou a funcionar perfeitamente

@ShaharHD
Copy link
Contributor

As has already been mentioned in this thread, and is displayed at the top of the original issue:

Portainer 2.20.3 has now been released, which includes a fix for these issues under Docker 26 and above. We recommend updating to 2.20.3 if you need to use Docker 26 or above.

Update to 2.20.3 and clear your browser cache.

Any plans on incorporating the fix on portainer-ce ?

@jamescarppe
Copy link
Member

Any plans on incorporating the fix on portainer-ce ?

The fix is there for both CE and BE on the 2.20 version. For CE, that would be portainer/portainer-ce:2.20.3.

@ShaharHD
Copy link
Contributor

ShaharHD commented Jul 31, 2024

Any plans on incorporating the fix on portainer-ce ?

The fix is there for both CE and BE on the 2.20 version. For CE, that would be portainer/portainer-ce:2.20.3.

I've used portainer/portainer-ce:latest which seems the tag is not pointing to latest version.

Which is instructed here: https://docs.portainer.io/start/install-ce/server/docker/linux

@jamescarppe
Copy link
Member

I've used portainer/portainer-ce:latest which seems the tag is not pointing to latest version.

Which is instructed here: https://docs.portainer.io/start/install-ce/server/docker/linux

Don't use portainer/portainer-ce:latest if you need Docker 26+ support. Use portainer/portainer-ce:2.20.3. As already covered here, the 2.20 branch is not a LTS release and thus won't be tagged with latest. 2.21 will be the first LTS with Docker 26+ support and will be tagged latest when it is released.

https://www.portainer.io/blog/2024-release-principle

@ShaharHD
Copy link
Contributor

I've used portainer/portainer-ce:latest which seems the tag is not pointing to latest version.
Which is instructed here: https://docs.portainer.io/start/install-ce/server/docker/linux

Don't use portainer/portainer-ce:latest if you need Docker 26+ support. Use portainer/portainer-ce:2.20.3. As already covered here, the 2.20 branch is not a LTS release and thus won't be tagged with latest. 2.21 will be the first LTS with Docker 26+ support and will be tagged latest when it is released.

https://www.portainer.io/blog/2024-release-principle

Will follow, but be aware: the term LTS nor a short "FYI" about pulling latest not being latest in the "start install" guides.

IMHO this should be mentioned as 99% of users will follow the "start install" guides when installing portainer and will never know about the 2024 release principle.

@NikolozCh
Copy link

I've used portainer/portainer-ce:latest which seems the tag is not pointing to latest version.

Which is instructed here: https://docs.portainer.io/start/install-ce/server/docker/linux

Don't use portainer/portainer-ce:latest if you need Docker 26+ support. Use portainer/portainer-ce:2.20.3. As already covered here, the 2.20 branch is not a LTS release and thus won't be tagged with latest. 2.21 will be the first LTS with Docker 26+ support and will be tagged latest when it is released.

https://www.portainer.io/blog/2024-release-principle

Instead of latest, use sts tag. Worked out for me

@jamescarppe
Copy link
Member

Will follow, but be aware: the term LTS nor a short "FYI" about pulling latest not being latest in the "start install" guides.

IMHO this should be mentioned as 99% of users will follow the "start install" guides when installing portainer and will never know about the 2024 release principle.

The current base documentation is for 2.19 so is written around that. As 2.20 is a STS release it isn't the default documentation version displayed, but you can select 2.20-specific docs with the version dropdown at the top of the documentation.

Once 2.21 is released that will become the default documentation and this won't be an issue.

@ShaharHD
Copy link
Contributor

ShaharHD commented Aug 1, 2024

Will follow, but be aware: the term LTS nor a short "FYI" about pulling latest not being latest in the "start install" guides.
IMHO this should be mentioned as 99% of users will follow the "start install" guides when installing portainer and will never know about the 2024 release principle.

The current base documentation is for 2.19 so is written around that. As 2.20 is a STS release it isn't the default documentation version displayed, but you can select 2.20-specific docs with the version dropdown at the top of the documentation.

Once 2.21 is released that will become the default documentation and this won't be an issue.

Again, I didn't select any version.
I could, if I knew latest is not really latest... (which now I know latest is actually latest-lts)

I used the URL (which most users will get from google) which is https://docs.portainer.io/start/install-ce/server/docker/linux

All I suggest is to give an indication this version is not compatible with the latest Docker and is not really latest and the user should check the 2.20 page or use sts (which worked in my case)

I fail to see the problem adding this to the landing page which most users will land on.

@jamescarppe
Copy link
Member

Again, I didn't select any version. I could, if I knew latest is not really latest... (which now I know latest is actually latest-lts)

This is primarily due to historical reasons - we started the STS/LTS process with 2.20, and we were already where we were with 2.19 before that, and then the Docker 26+ issue appeared. This will be resolved with the 2.21 issue, which should only be a few weeks away.

I used the URL (which most users will get from google) which is https://docs.portainer.io/start/install-ce/server/docker/linux

All I suggest is to give an indication this version is not compatible with the latest Docker and is not really latest and the user should check the 2.20 page or use sts (which worked in my case)

I fail to see the problem adding this to the landing page which most users will land on.

I've added warning boxes to the Docker installation pages in docs now. Hopefully this should help.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.