来源:公众号【鱼鹰谈单片机】,ID :emOsprey
本方法适合树莓派5,ubuntu,其他未测试过,方法是类似的,并添加目前可用镜像源。
安装 docker 软件
# 如果以前安装了 docker, 需要卸载sudo apt remove docker docker-engine docker.io containerd runc# 安装依赖sudo apt -y install ca-certificates curl gnupg lsb-release# 添加秘钥,返回 OKsudo curl -fsSL http://mirrors.aliyun.com/docker-ce/linux/$(lsb_release -is | tr '[:upper:]' '[:lower:]')/gpg | sudo apt-key add# 添加国内源# 根据 uname -m 结果,aarch64 (即树莓派5)修改为 [arch=arm64]# 根据 uname -m 结果,x86_64,修改为 [arch=amd64]sudo echo "deb [arch=arm64] http://mirrors.aliyun.com/docker-ce/linux/$(lsb_release -is | tr '[:upper:]' '[:lower:]') $(lsb_release -cs) stable" >> /etc/apt/sources.list# 或者使用自动化命令sudo bash -c "echo "deb [arch=$(uname -m | awk '{if ($0 == "x86_64") print "amd64"; else if ($0 == "aarch64") print "arm64"; else print $0}')] http://mirrors.aliyun.com/docker-ce/linux/$(lsb_release -is | tr '[:upper:]' '[:lower:]') $(lsb_release -cs) stable" >> /etc/apt/sources.list"# 或者 x64 ubuntu 下使用命令,注意,该命令在树莓派系统下会执行失败sudo add-apt-repository "deb [arch=amd64] http://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable"# 更新软件列表,如果报错,查看是否是新加入的源报的错,如果不是,不用管sudo apt update# 安装软件sudo apt -y install docker-ce docker-ce-cli containerd.io# 启动软件(安装完应该自动会执行,可不需要)systemctl start docker# 给当前用户添加权限,这样以后不需要使用 sudo 执行docker 命令sudo usermod -aG docker $USER# 退出系统重新登录,或者切换当前用户su $USER
镜像源更换
# 由于镜像源被墙,需要修改镜像源,这些源可以也会失效,需要从网上搜索可用源sudo vim /etc/docker/daemon.json#############################{"registry-mirrors": ["https://dockerhub.icu","https://hub.uuuadc.top","https://docker.anyhub.us.kg","https://dockerhub.jobcher.com","https://docker.ckyl.me","https://docker.awsl9527.cn"]}# 或者使用命令行直接修改(全部复制,这个源目前有效)sudo tee /etc/docker/daemon.json <<EOF{"registry-mirrors": ["https://dockerhub.icu"]}EOF# 确认源是否修改成功cat /etc/docker/daemon.json# 一定要重启服务sudo systemctl daemon-reloadsudo systemctl restart docker
获取镜像
# 查看当前镜像,确定是否可以不使用 sudo 执行 docker 命令docker images# 下拉镜像docker pull ubuntu:18.04# 进入容器docker run -it ubuntu:18.04
查看当前镜像,只有 57M 大小
树莓派成功进入容器(@后面的是容器 ID):
查看容器系统版本
查看架构为 aarch64:
容器内更新软件列表(有可能需要更新软件源,速度更快)
容器内安装软件 vim gcc 等
查看gcc 版本
查看所有存在的容器
查看资源占用 docker stats:
可以编译代码了,赶紧用起来吧
1994
下载ECAD模型