树莓派安装docker参考:

  方法1:官方文档(脚本直接安装)
  方法2:官方版本中译(嫌上一个麻烦的可以直接看这个)
  方法3:非脚本安装方法
  方法4:2&3

自己树莓派操作系统

  • 命令:
lsb_release  -a
  • 结果:
No LSB modules are available.
Distributor ID:	Raspbian
Description:	Raspbian GNU/Linux 10 (buster)
Release:	10
Codename:	buster

出错情况

在这里插入图片描述
  很迷惑的一点就是按照方法4中的直接脚本安装,并没有出现:
在这里插入图片描述
  而且输入命令:docker -v并不显示安装成功,反而提示没有docker。但是按照方法3来做,会提示:

  因为已有的环境没法再改,涉及到很多东西都得改(实际上自己也不大会),关键问题是直接脚本应该是没有错的,完全符合方法1中的各个条件,网上也没有类似问题,就很头大。

解决方法

  因为方法3,所以自己去查了一下自己的软件源,发现很有问题:

  • 仅以/etc/apt/sources.list.d/raspi.list为例(当然还要改sources.list)

在这里插入图片描述
  对比自己的操作系统是buster,而自己软件源选的是stretch,,这就很有问题。主要是自己先前设置软件源的时候也没好好看别人的博客,就稀里糊涂ctrl + v/c了。
  改正完后按照方法1中直接脚本输入得到:

# Executing docker install script, commit: 3d8fe77c2c46c5b7571f94b42793905e5b3e42e4
+ sh -c apt-get update -qq >/dev/null
+ sh -c DEBIAN_FRONTEND=noninteractive apt-get install -y -qq apt-transport-https ca-certificates curl >/dev/null
+ sh -c curl -fsSL "https://download.docker.com/linux/raspbian/gpg" | apt-key add -qq - >/dev/null
Warning: apt-key output should not be parsed (stdout is not a terminal)
+ sh -c echo "deb [arch=armhf] https://download.docker.com/linux/raspbian buster stable" > /etc/apt/sources.list.d/docker.list
+ sh -c apt-get update -qq >/dev/null
+ [ -n  ]
+ sh -c apt-get install -y -qq --no-install-recommends docker-ce >/dev/null
+ sh -c docker version
Client: Docker Engine - Community
 Version:           20.10.3
 API version:       1.41
 Go version:        go1.13.15
 Git commit:        48d30b5
 Built:             
 OS/Arch:           linux/arm
 Context:           default
 Experimental:      true

Server: Docker Engine - Community
 Engine:
  Version:          20.10.3
  API version:      1.41 (minimum version 1.12)
  Go version:       go1.13.15
  Git commit:       46229ca
  Built:            
  OS/Arch:          linux/arm
  Experimental:     false
 containerd:
  Version:          1.4.3
  GitCommit:        269548fa27e0089a8b8278fc4fc781d7f65a939b
 runc:
  Version:          1.0.0-rc92
  GitCommit:        ff819c7e9184c13b7c2607fe6c30ae19403a7aff
 docker-init:
  Version:          0.19.0
  GitCommit:        de40ad0
If you would like to use Docker as a non-root user, you should now consider
adding your user to the "docker" group with something like:

  sudo usermod -aG docker your-user

Remember that you will have to log out and back in for this to take effect!

WARNING: Adding a user to the "docker" group will grant the ability to run
         containers which can be used to obtain root privileges on the
         docker host.
         Refer to https://docs.docker.com/engine/security/security/#docker-daemon-attack-surface
         for more information.
Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐