Can I not install Docker on a Raspberry Pi Desktop on VMWare?

I like to use the Raspberry Pi Desktop in VMWare Workstation, because I am used to the Pi interface, and it’s lightweight. But when I tried to set up a new one today, I ran into a big snag, it seems. I followed the installation instructions for Debian (of course, since Raspberry Pi OS is built on that), with keyring and other prefequisites. Then I got this output when trying to actually install it:

pi@raspberry:~/Docker-Compose $ echo   "deb [arch="$(dpkg --print-architecture)" signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/debian \
  "$(. /etc/os-release && echo "bullseye")" stable" |   sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
pi@raspberry:~/Docker-Compose $ sudo apt-get update
Funnet:1 http://archive.raspberrypi.org/debian bullseye InRelease
Funnet:2 http://deb.debian.org/debian bullseye InRelease
Funnet:3 http://deb.debian.org/debian-security bullseye-security InRelease
Funnet:4 https://download.docker.com/linux/debian bullseye InRelease
Funnet:5 http://deb.debian.org/debian bullseye-updates InRelease
Leser pakkelister ... Ferdig
N: Skipping acquire of configured file 'stable/binary-i386/Packages' as repository 'https://download.docker.com/linux/debian bullseye InRelease' doesn't support architecture 'i386'

Does this mean that there is no way to install Docker on this OS, and I have to use a regular Debian or some other OS to do it?

I don’t think “VMWare Workstation” runs on a Raspi ARM CPU.

System Requirements
A compatible 64-bit x86/AMD64 CPU launched in 2011 or later

(Link)

Thanks for answering, but I don’t think you read that right. I don’t want to run VMWare Workstation on a Pi, even if that was possible it would really be a new definition of “World Wide Wait”. :grin: I have been running that on my servers the last 15 years or so.

I said I wanted to use Raspberry Pi Desktop (which is an OS and from what I understand is just Debian for x86 architecture with the Pi user interface, I could probably have noted that) in WMWare Workstation. I have the OS up and running in a newly created VM on my server, the problem is to get Docker installed. I figured I could use the regular Debian version and the installation instructions for that, but I ran into the error messages above.

You can read about the installation on Rasberry Pi in the documentation:

I have no experience with RPi, but I guess your system is 32bit, right?

And sorry if I misunderstood it as well :slight_smile:

I’m afraid you did misunderstand. :wink: This is 64 bit OS running as a VMWare guest on a Windows Server host, so it’s not a physical Raspberry Pi, as I said from what I understand it’s close to a Debian with the Raspberry Pi desktop instead of their own. But I understand that this use case is so far outside the mainstream that nobody probably know how to do it. Btw newer Pi’s are 64 bit, but I have no problems installing on those, I have close to ten Pis running Home Assistant, Node-RED and various other stuff in Docker.

Can you share how that is possible? I found this:

And it says the OS is 32 bit.

Debian Bullseye with Raspberry Pi Desktop

  • Release date: July 1st 2022
  • System: 32-bit
  • Kernel version: 5.10
  • Debian version: 11 (bullseye)
  • Size: 3,440MB

The error message indicates the following command returned i386 and not x86_64 or amd64

dpkg --print-architecture

Packages for i386 are not available in the Debian bullseye repo

https://download.docker.com/linux/debian/dists/bullseye/stable/

That’s the correct OS, yeah. But I thought it was 64 bits, so I guess I should not believe everything I read on the Internet… I read in some Stackexchange post that the command was uname -a, which gave me this:

Linux raspberry 5.10.0-26-amd64 #1 SMP Debian 5.10.197-1 (2023-09-29) x86_64 GNU/Linux

From the last bit, I gatered that it was 64 bit. But the arcitechture from your command is i386. So that means that there are no packages that I can find anywhere?

That’s strange. You are right about the uname -a command. If the kernel is amd64, I would expect the dpkg command to return the same. I don’t know if it is possible but maybe the kernel is indeed 64 bit, but other packages like dpkg are 32 bit. I have no idea why that would be the case. However, I remember one case when dpkg reported incorrect architecture.

Let’s try something and assume that the OS is indeed amd64 and dpkg reports an incorrect architecture and the official Rasberry Pi Desktop website is not up to date and they have a 64bit OS as well.

Remove docker.list from sources.list.d and use this as the first command:

echo   "deb [signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/debian \
  "$(. /etc/os-release && echo "bullseye")" stable" |   sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

This will not try to detect the architetcure. If this doesn’t work, then try this too:

echo   "deb [arch=\"amd64\" signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/debian \
  "$(. /etc/os-release && echo "bullseye")" stable" |   sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

The first version errored out on get-update. The last version did not give an error when runing get-update, but the packages didn’t install with the get-docker.sh script. They all said no installation candidate (I think that’s the translation, it’s in Norwegian) or “can not find a package with glob” or “can not find a package with regex”.

Since I’m just guessing now and I don’t use any Rasberry related OS, I recommend asking about the architecture difference on the Rasberry PI forum. Maybe they can also tell you how you can install Docker. If not, but you can at least find out why we see amd64 in the kernel and why the website and dpkg says its i386 and 32 bit, we can continue the discussion here.

Thanks for trying! That’s quite hopeless, I have asked questions about the Desktop for WIndows before there and not received any meaningful answers. But if I install regular Debian in a VM, will I be able to install Docker then? And should I chose the 64 bit Debian?

Yes, in a regular VM which runs a regular Debian you can install Docker. I would not use the get-docker.sh, but if you follow the documentation here, you should be able to make it work:

get-docker.sh whould work too, but that is mainly for quickly test Docker and I like to follow the steps for a specific distro so I know exactly what and why runs.

Great, thanks! :+1: Then I’ll try that tomorrow.

I installed a VM with regular Debian, but I still got the same message, that it doesn’t support i386. Then I understood what I was doing and installed a new VM with 64 bit Debian (turned out I had downloaded the i386 image the first time), and now it works. :grin: Thanks again!