Docker Desktop Installation on Ubuntu 22.04 Fails with Unmet Dependencies

I am running a fresh install of Ubuntu 22.04.
Following these directions on the Docker website fails with the following errors:

The following packages have unmet dependencies:
docker-desktop : Depends: pass but it is not installable
Depends: uidmap but it is not installable
E: Unable to correct problems, you have held broken packages.

Please advise.
Thank you.
Rick.

ubuntu@ubuntu:~$ # Add Docker's official GPG key:
sudo apt-get update
sudo apt-get install ca-certificates curl
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc

# Add the repository to Apt sources:
echo \
  "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \
  $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \
  sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update
Ign:1 cdrom://Ubuntu 22.04.3 LTS _Jammy Jellyfish_ - Release amd64 (20230807.2) jammy InRelease
Hit:2 cdrom://Ubuntu 22.04.3 LTS _Jammy Jellyfish_ - Release amd64 (20230807.2) jammy Release
Get:4 http://security.ubuntu.com/ubuntu jammy-security InRelease [110 kB]
Hit:5 http://archive.ubuntu.com/ubuntu jammy InRelease     
Get:6 http://archive.ubuntu.com/ubuntu jammy-updates InRelease [119 kB]
Get:7 http://security.ubuntu.com/ubuntu jammy-security/main amd64 Packages [1,109 kB]
Get:8 http://archive.ubuntu.com/ubuntu jammy-updates/main amd64 Packages [1,325 kB]
Get:9 http://security.ubuntu.com/ubuntu jammy-security/main Translation-en [207 kB]
Get:10 http://security.ubuntu.com/ubuntu jammy-security/main amd64 DEP-11 Metadata [43.0 kB]    
Get:11 http://security.ubuntu.com/ubuntu jammy-security/main DEP-11 48x48 Icons [16.9 kB]            
Get:12 http://security.ubuntu.com/ubuntu jammy-security/main DEP-11 64x64 Icons [26.5 kB]       
Get:13 http://security.ubuntu.com/ubuntu jammy-security/main amd64 c-n-f Metadata [11.4 kB]     
Get:14 http://security.ubuntu.com/ubuntu jammy-security/restricted amd64 Packages [1,313 kB]       
Get:15 http://security.ubuntu.com/ubuntu jammy-security/restricted Translation-en [214 kB]   
Get:16 http://security.ubuntu.com/ubuntu jammy-security/restricted amd64 c-n-f Metadata [520 B]   
Get:17 http://archive.ubuntu.com/ubuntu jammy-updates/main Translation-en [267 kB]              
Get:18 http://archive.ubuntu.com/ubuntu jammy-updates/main amd64 DEP-11 Metadata [101 kB]
Get:19 http://archive.ubuntu.com/ubuntu jammy-updates/main DEP-11 48x48 Icons [36.1 kB]
Get:20 http://archive.ubuntu.com/ubuntu jammy-updates/main DEP-11 64x64 Icons [55.1 kB]
Get:21 http://archive.ubuntu.com/ubuntu jammy-updates/main amd64 c-n-f Metadata [16.1 kB]
Get:22 http://archive.ubuntu.com/ubuntu jammy-updates/restricted amd64 Packages [1,342 kB]
Get:23 http://archive.ubuntu.com/ubuntu jammy-updates/restricted Translation-en [220 kB]
Get:24 http://archive.ubuntu.com/ubuntu jammy-updates/restricted amd64 c-n-f Metadata [520 B]
Fetched 6,534 kB in 2s (3,756 kB/s)
Reading package lists... Done
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
ca-certificates is already the newest version (20230311ubuntu0.22.04.1).
ca-certificates set to manually installed.
The following NEW packages will be installed:
  curl
The following packages will be upgraded:
  libcurl4
1 upgraded, 1 newly installed, 0 to remove and 260 not upgraded.
Need to get 483 kB of archives.
After this operation, 454 kB of additional disk space will be used.
Get:1 http://security.ubuntu.com/ubuntu jammy-security/main amd64 libcurl4 amd64 7.81.0-1ubuntu1.15 [289 kB]
Get:2 http://security.ubuntu.com/ubuntu jammy-security/main amd64 curl amd64 7.81.0-1ubuntu1.15 [194 kB]
Fetched 483 kB in 1s (508 kB/s)
(Reading database ... 207609 files and directories currently installed.)
Preparing to unpack .../libcurl4_7.81.0-1ubuntu1.15_amd64.deb ...
Unpacking libcurl4:amd64 (7.81.0-1ubuntu1.15) over (7.81.0-1ubuntu1.13) ...
Selecting previously unselected package curl.
Preparing to unpack .../curl_7.81.0-1ubuntu1.15_amd64.deb ...
Unpacking curl (7.81.0-1ubuntu1.15) ...
Setting up libcurl4:amd64 (7.81.0-1ubuntu1.15) ...
Setting up curl (7.81.0-1ubuntu1.15) ...
Processing triggers for man-db (2.10.2-1) ...
Processing triggers for libc-bin (2.35-0ubuntu3.1) ...
Ign:1 cdrom://Ubuntu 22.04.3 LTS _Jammy Jellyfish_ - Release amd64 (20230807.2) jammy InRelease
Hit:2 cdrom://Ubuntu 22.04.3 LTS _Jammy Jellyfish_ - Release amd64 (20230807.2) jammy Release
Get:4 https://download.docker.com/linux/ubuntu jammy InRelease [48.8 kB]                                                        
Hit:5 http://security.ubuntu.com/ubuntu jammy-security InRelease                                                                
Hit:6 http://archive.ubuntu.com/ubuntu jammy InRelease                          
Get:7 https://download.docker.com/linux/ubuntu jammy/stable amd64 Packages [25.1 kB]
Hit:8 http://archive.ubuntu.com/ubuntu jammy-updates InRelease
Fetched 73.9 kB in 1s (146 kB/s)
Reading package lists... Done
ubuntu@ubuntu:~$ sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
The following additional packages will be installed:
  docker-ce-rootless-extras git git-man liberror-perl
Suggested packages:
  aufs-tools cgroupfs-mount | cgroup-lite git-daemon-run | git-daemon-sysvinit git-doc git-email git-gui gitk gitweb git-cvs git-mediawiki git-svn
Recommended packages:
  pigz slirp4netns
The following NEW packages will be installed:
  containerd.io docker-buildx-plugin docker-ce docker-ce-cli docker-ce-rootless-extras docker-compose-plugin git git-man liberror-perl
0 upgraded, 9 newly installed, 0 to remove and 260 not upgraded.
Need to get 121 MB of archives.
After this operation, 439 MB of additional disk space will be used.
Do you want to continue? [Y/n] 
Get:1 https://download.docker.com/linux/ubuntu jammy/stable amd64 containerd.io amd64 1.6.27-1 [29.5 MB]
Get:2 http://archive.ubuntu.com/ubuntu jammy/main amd64 liberror-perl all 0.17029-1 [26.5 kB]
Get:3 http://archive.ubuntu.com/ubuntu jammy-updates/main amd64 git-man all 1:2.34.1-1ubuntu1.10 [954 kB]
Get:4 http://archive.ubuntu.com/ubuntu jammy-updates/main amd64 git amd64 1:2.34.1-1ubuntu1.10 [3,166 kB]
Get:5 https://download.docker.com/linux/ubuntu jammy/stable amd64 docker-buildx-plugin amd64 0.12.1-1~ubuntu.22.04~jammy [28.2 MB]
Get:6 https://download.docker.com/linux/ubuntu jammy/stable amd64 docker-ce-cli amd64 5:25.0.1-1~ubuntu.22.04~jammy [13.7 MB]
Get:7 https://download.docker.com/linux/ubuntu jammy/stable amd64 docker-ce amd64 5:25.0.1-1~ubuntu.22.04~jammy [24.3 MB]
Get:8 https://download.docker.com/linux/ubuntu jammy/stable amd64 docker-ce-rootless-extras amd64 5:25.0.1-1~ubuntu.22.04~jammy [9,312 kB]
Get:9 https://download.docker.com/linux/ubuntu jammy/stable amd64 docker-compose-plugin amd64 2.24.2-1~ubuntu.22.04~jammy [12.1 MB]
Fetched 121 MB in 4s (32.7 MB/s)                
Selecting previously unselected package containerd.io.
(Reading database ... 207616 files and directories currently installed.)
Preparing to unpack .../0-containerd.io_1.6.27-1_amd64.deb ...
Unpacking containerd.io (1.6.27-1) ...
Selecting previously unselected package docker-buildx-plugin.
Preparing to unpack .../1-docker-buildx-plugin_0.12.1-1~ubuntu.22.04~jammy_amd64.deb ...
Unpacking docker-buildx-plugin (0.12.1-1~ubuntu.22.04~jammy) ...
Selecting previously unselected package docker-ce-cli.
Preparing to unpack .../2-docker-ce-cli_5%3a25.0.1-1~ubuntu.22.04~jammy_amd64.deb ...
Unpacking docker-ce-cli (5:25.0.1-1~ubuntu.22.04~jammy) ...
Selecting previously unselected package docker-ce.
Preparing to unpack .../3-docker-ce_5%3a25.0.1-1~ubuntu.22.04~jammy_amd64.deb ...
Unpacking docker-ce (5:25.0.1-1~ubuntu.22.04~jammy) ...
Selecting previously unselected package docker-ce-rootless-extras.
Preparing to unpack .../4-docker-ce-rootless-extras_5%3a25.0.1-1~ubuntu.22.04~jammy_amd64.deb ...
Unpacking docker-ce-rootless-extras (5:25.0.1-1~ubuntu.22.04~jammy) ...
Selecting previously unselected package docker-compose-plugin.
Preparing to unpack .../5-docker-compose-plugin_2.24.2-1~ubuntu.22.04~jammy_amd64.deb ...
Unpacking docker-compose-plugin (2.24.2-1~ubuntu.22.04~jammy) ...
Selecting previously unselected package liberror-perl.
Preparing to unpack .../6-liberror-perl_0.17029-1_all.deb ...
Unpacking liberror-perl (0.17029-1) ...
Selecting previously unselected package git-man.
Preparing to unpack .../7-git-man_1%3a2.34.1-1ubuntu1.10_all.deb ...
Unpacking git-man (1:2.34.1-1ubuntu1.10) ...
Selecting previously unselected package git.
Preparing to unpack .../8-git_1%3a2.34.1-1ubuntu1.10_amd64.deb ...
Unpacking git (1:2.34.1-1ubuntu1.10) ...
Setting up liberror-perl (0.17029-1) ...
Setting up docker-buildx-plugin (0.12.1-1~ubuntu.22.04~jammy) ...
Setting up containerd.io (1.6.27-1) ...
Created symlink /etc/systemd/system/multi-user.target.wants/containerd.service → /lib/systemd/system/containerd.service.
Setting up docker-compose-plugin (2.24.2-1~ubuntu.22.04~jammy) ...
Setting up docker-ce-cli (5:25.0.1-1~ubuntu.22.04~jammy) ...
Setting up git-man (1:2.34.1-1ubuntu1.10) ...
Setting up docker-ce-rootless-extras (5:25.0.1-1~ubuntu.22.04~jammy) ...
Setting up docker-ce (5:25.0.1-1~ubuntu.22.04~jammy) ...
Created symlink /etc/systemd/system/multi-user.target.wants/docker.service → /lib/systemd/system/docker.service.
Created symlink /etc/systemd/system/sockets.target.wants/docker.socket → /lib/systemd/system/docker.socket.
Setting up git (1:2.34.1-1ubuntu1.10) ...
Processing triggers for man-db (2.10.2-1) ...
ubuntu@ubuntu:~$ sudo docker run hello-world
Unable to find image 'hello-world:latest' locally
latest: Pulling from library/hello-world
c1ec31eb5944: Pull complete 
Digest: sha256:4bd78111b6914a99dbc560e6a20eab57ff6655aea4a80c50b0c5491968cbc2e6
Status: Downloaded newer image for hello-world:latest

Hello from Docker!
This message shows that your installation appears to be working correctly.

To generate this message, Docker took the following steps:
 1. The Docker client contacted the Docker daemon.
 2. The Docker daemon pulled the "hello-world" image from the Docker Hub.
    (amd64)
 3. The Docker daemon created a new container from that image which runs the
    executable that produces the output you are currently reading.
 4. The Docker daemon streamed that output to the Docker client, which sent it
    to your terminal.

To try something more ambitious, you can run an Ubuntu container with:
 $ docker run -it ubuntu bash

Share images, automate workflows, and more with a free Docker ID:
 https://hub.docker.com/

For more examples and ideas, visit:
 https://docs.docker.com/get-started/

**ubuntu@ubuntu:~$ sudo apt-get update**
**sudo apt-get install ./Downloads/docker-desktop-4.27.0-amd64.deb**
Ign:1 cdrom://Ubuntu 22.04.3 LTS _Jammy Jellyfish_ - Release amd64 (20230807.2) jammy InRelease
Hit:2 cdrom://Ubuntu 22.04.3 LTS _Jammy Jellyfish_ - Release amd64 (20230807.2) jammy Release
Hit:4 https://download.docker.com/linux/ubuntu jammy InRelease                                               
Hit:5 http://archive.ubuntu.com/ubuntu jammy InRelease                                                       
Get:6 http://archive.ubuntu.com/ubuntu jammy-updates InRelease [119 kB]
Hit:7 http://security.ubuntu.com/ubuntu jammy-security InRelease       
Fetched 119 kB in 5s (22.4 kB/s)      
Reading package lists... Done
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
Note, selecting 'docker-desktop' instead of './Downloads/docker-desktop-4.27.0-amd64.deb'
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 docker-desktop : Depends: pass but it is not installable
                  Depends: uidmap but it is not installable
E: Unable to correct problems, you have held broken packages.

There are dependencies that apt couldn’t install automatically, but you can try manually. That might give you more detailed error messages on why it wasnot installable. Maybe some libraries are not compatible with the packages.

Hi rimelek!

Good to hear from you. I was following the instructions on the Docker website using a fresh Ubuntu 22.04 install. Nothing else but Ubuntu 22.04 was installed. Is it possible the Docker documentation is in error?

Thank you.
Rick

Everything is possible but I always try to fix the problem first and then report an issue if it is one or I can’t fix it. Sometimes it is just something that we don’t think of and we can fix easier than waiting for someone from Docker to help.

I have to add that I have Docker Desktop installed on an Ubuntu 22.04 so it is also possible that you missed something in the docs, although I installed it some months ago and not v4.27.0.

I still recommend doing what I suggested in my previous post, but you can also try to install an older version from the release page o see if that works.

Hi rimelek,

I have previously tried other versions with the same results. What version are you using?

Thank you.
Rick.

Originally it was 4.26.1, but I updated Docker Desktop to 4.27.1. Still works.

Since you didn’t react to that part, I can just repeat myself.

Rimelek,

I was using a Live Ubuntu 22.04 USB to install Docker Desktop using the ‘Try Ubuntu’ option. I clicked on Ubuntu Software, Updates and installed the following updates:

firefox (116.02)
gnome-42-2204 (0+git.ff35a85)
snapd (2.61.1)
core 20 (20230622)
core 22 (20230725)

These completed successfully. I then followed Docker’s instructions to install Docker Desktop which resulted in the errors found in my original post.

I then installed Ubuntu 22.04 on a SanDisk Extreme PRO USB 3.2 128GB Solid State Flash Drive from the LIVE Ubuntu 22.04 USB, performed the previous updates and followed Docker’s instructions to install Docker Desktop. Everything then worked as would be expected.

Thank you.
Rick.

Hello :slight_smile:
I had the same issue as you, you need to set up the apt path prior the file installation.
Please check : Install Docker Engine on Debian | Docker Docs
Once you exec the commands, retry and you will no longer get’s the error.
Cheers,
Imad