在树莓派上设置Docker
由于测试需要,我经常重置家里的树莓派并安装Docker,所以我将记录下备忘录中的步骤。
虽然如此,只需复制粘贴下面的正式文章,
最后将docker权限授予pi用户。
设备信息
使用Raspberry Pi Imager v1.7.2软件将Raspberry Pi OS(64位版本) 安装在SSD上。
pi@raspberry:~ $ lsb_release -a
No LSB modules are available.
Distributor ID: Debian
Description: Debian GNU/Linux 11 (bullseye)
Release: 11
Codename: bullseye
pi@raspberry:~ $ uname -a
Linux raspberry 5.15.32-v8+ #1538 SMP PREEMPT Thu Mar 31 19:40:39 BST 2022 aarch64 GNU/Linux
安装Docker
当天的报道如下所述,但事实上我能够顺利地安装,所以就忽略了。以前,树莓派无法适应指定链接的架构名称,但我不知何时命令内容已有变更,所以可能已经没问题了。虽然如此,如果觉得提供的脚本更容易执行的话,就选择那个吧。

因为脚本已经准备好,只需要复制粘贴就可以完成,所以我省略了。
卸载旧版本
pi@raspberry:~ $ sudo apt-get remove docker docker-engine docker.io containerd runc
设置存储库
pi@raspberry:~ $ sudo apt-get update
pi@raspberry:~ $ sudo apt-get install -y ca-certificates curl gnupg lsb-release
pi@raspberry:~ $ sudo mkdir -p /etc/apt/keyrings
pi@raspberry:~ $ curl -fsSL https://download.docker.com/linux/debian/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
pi@raspberry:~ $ dpkg --print-architecture
pi@raspberry:~ $ echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/debian $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
安装Docker引擎
pi@raspberry:~ $ sudo apt-get update
pi@raspberry:~ $ sudo apt-get install docker-ce docker-ce-cli containerd.io docker-compose-plugin
pi@raspberry:~ $ apt-cache madison docker-ce
> docker-ce | 5:20.10.17~3-0~debian-bullseye | https://download.docker.com/linux/debian bullseye/stable arm64 Packages
> docker-ce | 5:20.10.16~3-0~debian-bullseye | https://download.docker.com/linux/debian bullseye/stable arm64 Packages
> docker-ce | 5:20.10.15~3-0~debian-bullseye | https://download.docker.com/linux/debian bullseye/stable arm64 Packages
> docker-ce | 5:20.10.14~3-0~debian-bullseye | https://download.docker.com/linux/debian bullseye/stable arm64 Packages
> docker-ce | 5:20.10.13~3-0~debian-bullseye | https://download.docker.com/linux/debian bullseye/stable arm64 Packages
> docker-ce | 5:20.10.12~3-0~debian-bullseye | https://download.docker.com/linux/debian bullseye/stable arm64 Packages
> docker-ce | 5:20.10.11~3-0~debian-bullseye | https://download.docker.com/linux/debian bullseye/stable arm64 Packages
> docker-ce | 5:20.10.10~3-0~debian-bullseye | https://download.docker.com/linux/debian bullseye/stable arm64 Packages
> docker-ce | 5:20.10.9~3-0~debian-bullseye | https://download.docker.com/linux/debian bullseye/stable arm64 Packages
> docker-ce | 5:20.10.8~3-0~debian-bullseye | https://download.docker.com/linux/debian bullseye/stable arm64 Packages
> docker-ce | 5:20.10.7~3-0~debian-bullseye | https://download.docker.com/linux/debian bullseye/stable arm64 Packages
> docker-ce | 5:20.10.6~3-0~debian-bullseye | https://download.docker.com/linux/debian bullseye/stable arm64 Packages
请将以下命令更改并执行,以安装最新的5:20.10.17~3-0~debian-bullseye版本。
请注意,因为语言和字符差异,翻译可能会有细微差异,但意思保持一致。
sudo apt-get install docker-ce=<VERSION_STRING> docker-ce-cli=<VERSION_STRING> containerd.io docker-compose-plugin
请将以下内容用中文进行润色:↓
pi@raspberry:~ $ sudo apt-get install docker-ce=5:20.10.17~3-0~debian-bullseye docker-ce-cli=5:20.10.17~3-0~debian-bullseye containerd.io docker-compose-plugin
确认是否已安装
pi@raspberry:~ $ sudo docker run --rm hello-world
使得pi用户能够执行
请确认是否存在docker组。
pi@raspberry:~ $ cat /etc/group | grep docker
如果不存在,手动创建docker组
pi@raspberry:~ $ sudo groupadd docker
pi@raspberry:~ $ sudo groupadd docker
将pi用户添加到docker组并重新启动
pi@raspberry:~ $ sudo usermod -aG docker pi
pi@raspberry:~ $ sudo reboot
重启后,确认一下我的团队是否存在,如果存在的话就可以了!
pi@raspberry:~ $ id | grep docker
> uid=1000(pi) gid=1000(pi) groups=1000(pi),4(adm),20(dialout),24(cdrom),27(sudo),29(audio),44(video),46(plugdev),60(games),100(users),104(input),106(render),108(netdev),117(lpadmin),995(docker),997(gpio),998(i2c),999(spi)
请确认一下Docker的版本
pi@raspberry:~ $ docker version
Client: Docker Engine - Community
Version: 20.10.17
API version: 1.41
Go version: go1.17.11
Git commit: 100c701
Built: Mon Jun 6 23:02:34 2022
OS/Arch: linux/arm64
Context: default
Experimental: true
Server: Docker Engine - Community
Engine:
Version: 20.10.17
API version: 1.41 (minimum version 1.12)
Go version: go1.17.11
Git commit: a89b842
Built: Mon Jun 6 23:01:01 2022
OS/Arch: linux/arm64
Experimental: false
containerd:
Version: 1.6.6
GitCommit: 10c12954828e7c7c9b6e0ea9b0c02b01407d3ae1
runc:
Version: 1.1.2
GitCommit: v1.1.2-0-ga916309
docker-init:
Version: 0.19.0
GitCommit: de40ad0
pi@raspberry:~ $ docker compose version
Docker Compose version v2.6.0
你的电脑上也安装了Docker Compose v2呀。