Ubuntu系统安装Docker详细攻略,触觉智能RK3568开发板
创始人
2025-06-12 12:41:17
0

本文介绍Ubuntu系统安装Docker方法,使用触觉智能EVB3568鸿蒙开发板演!

内核配置

1、使用check_config.sh脚本检查当前内核配置是否适配Docker,该脚本可从github下载:

https://github.com/opencontainers/runc/blob/main/script/check-config.sh

2、将下载好的配置脚本文件放到如下图目录:

3、配置一个带Docker配置的内核文件

kernel目录下会有一个.config文件,该文件记录了内核目前的配置,最终编译使能的配置也是根据该.config文件,而这个.config文件的内容由 kernel/arch/arm64/configs 中的配置文件决定。

cd kernel/arch/arm64/configs

cp rockchip_linux_evb3568v1_defconfig rockchip_linux_evb3568v1_docker_defconfig

执行我们下载好的脚本,检测新复制的defconfig文件,然后编辑该defconfig文件,将missing的选项添加进去,直到./check_configs.ch不出现missing。

c./check_config.sh ./kernel/arch/arm64/configs/rockchip_linux_evb3568v1_docker_defconfig

info: reading kernel config from arch/arm64/configs/rockchip_linux_evb3568v1_defconfig ...

Generally Necessary:

- cgroup hierarchy: properly mounted [/sys/fs/cgroup]

- apparmor: enabled and tools installed

- CONFIG_NAMESPACES: enabled

- CONFIG_NET_NS: enabled

- CONFIG_PID_NS: enabled

- CONFIG_IPC_NS: enabled

- CONFIG_UTS_NS: enabled

- CONFIG_CGROUPS: enabled

- CONFIG_CGROUP_CPUACCT: enabled

- CONFIG_CGROUP_DEVICE: enabled

- CONFIG_CGROUP_FREEZER: enabled

- CONFIG_CGROUP_SCHED: enabled

- CONFIG_CPUSETS: enabled

- CONFIG_MEMCG: enabled

- CONFIG_KEYS: enabled

- CONFIG_VETH: enabled

- CONFIG_BRIDGE: enabled

- CONFIG_BRIDGE_NETFILTER: enabled

- CONFIG_IP_NF_FILTER: enabled

- CONFIG_IP_NF_TARGET_MASQUERADE: enabled

- CONFIG_NETFILTER_XT_MATCH_ADDRTYPE: enabled

- CONFIG_NETFILTER_XT_MATCH_COMMENT: missing

- CONFIG_NETFILTER_XT_MATCH_CONNTRACK: enabled

- CONFIG_NETFILTER_XT_MATCH_IPVS: enabled

- CONFIG_IP_NF_NAT: enabled

- CONFIG_NF_NAT: enabled

- CONFIG_POSIX_MQUEUE: enabled

- CONFIG_OVERLAY_FS: enabled

Optional Features:

- CONFIG_USER_NS: enabled

- CONFIG_SECCOMP: enabled

- CONFIG_SECCOMP_FILTER: enabled

- CONFIG_CGROUP_PIDS: enabled

- CONFIG_MEMCG_SWAP: enabled

- CONFIG_MEMCG_SWAP_ENABLED: missing

(note that cgroup swap accounting is not enabled in your kernel config, you can enable it by setting boot option "swapaccount=1")

- CONFIG_BLK_CGROUP_IOCOST: missing

- CONFIG_BLK_CGROUP: enabled

- CONFIG_BLK_DEV_THROTTLING: enabled

- CONFIG_CGROUP_PERF: enabled

- CONFIG_CGROUP_HUGETLB: enabled

- CONFIG_NET_CLS_CGROUP: enabled

- CONFIG_CGROUP_NET_PRIO: enabled

- CONFIG_CFS_BANDWIDTH: enabled

- CONFIG_FAIR_GROUP_SCHED: enabled

- CONFIG_RT_GROUP_SCHED: enabled

- CONFIG_IP_NF_TARGET_REDIRECT: enabled

- CONFIG_IP_VS: enabled

- CONFIG_IP_VS_NFCT: enabled

- CONFIG_IP_VS_PROTO_TCP: enabled

- CONFIG_IP_VS_PROTO_UDP: enabled

- CONFIG_IP_VS_RR: enabled

- CONFIG_SECURITY_SELINUX: enabled

- CONFIG_SECURITY_APPARMOR: enabled

- CONFIG_CHECKPOINT_RESTORE: missing

#can1接收

这里是我们适配好的内核配置(提取码:1234):

https://pan.baidu.com/s/1HQdfggCQp0yMHUca4pV6qQ?pwd=1234

修改编译时的配置文件

在编译之前通常需要根据自己的需求选择相应的选项,也就是在选择编译时要用到的配置文件。

进入 SDK根目录

/device/rockchip/rk3566_rk3568,因为我们选择的7,对应的是红框处文件,要修改这个文件:

执行命令

vim rockchip_rk3568_EVB3568V1_HDMI_defconfig,将原RK_KERNEL注释掉,重新添加一条RK_KERNEL,后面填入配置过Docker的内核配置文件名,

rockchip_linux_evb3568v1_docker_defconfig的配置项会写入内核.config文件,这样配置就生效了。

单独编译内核并烧录

在SDK根目录下执行./build.sh kernel如图可以看到内核的配置文件已经替换为适配了Docker的。

注意:一定要先./build.sh lunch选择自己修改过带Docker的配置文件,不然使用的是不带Docker原配置。

内核编译成功(这里为了节省时间选择单独编译内核):

注意:若要编译整包固件 还需执行

export RK_ROOTFS_SYSTEM=ubuntu20,然后直接执行./build.sh即可。

具体可以到触觉智能 官网中选择对应产品,进入到资料下载中心,查阅相关SDK编译、固件烧录手册。

最后单独烧入编译好的boot.img

注意:当设备进入loader模式下,点击“设备分区表”后更新下载地址,即可得到对应分区下载地址,随后单独烧入boot.img(内核镜像)即可。

安装Docker并验证

输入以下命令:

apt-get update

apt-get install docker.io

安装成功:

验证是否成功安装

root@ido:~# docker run hello-world

报错:docker: Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?.

See 'docker run --help'.

配置Docker的加速地址。

sudo mkdir -p /etc/docker

sudo tee /etc/docker/daemon.json <<-'EOF'

{

"registry-mirrors": [

"https://do.nark.eu.org",

"https://dc.j8.work",

"https://docker.m.daocloud.io",

"https://dockerproxy.com",

"https://docker.mirrors.ustc.edu.cn",

"https://docker.nju.edu.cn"

]

}

EOF

sudo systemctl daemon-reload#当修改了某些服务的配置后,执行该命令使修改项立即生效

sudo systemctl restart docker

systemctl status docker

详细介绍链接如下:

https://blog.csdn.net/oyjl__/article/details/143522664

如上图所示,sudo systemctl restart docker时会出现错误。

root@ido:~# dockerd --debug

INFO[2025-02-27T02:47:40.691781099Z] Starting up

mkdir /var/lib/docker: file exists#这里发现已经存在docker,需要删除掉让docker再重新生成一次

rm /var/lib/docker

#再次执行如下命令

sudo systemctl daemon-reload

sudo systemctl restart docker

sudo systemctl status docker

如图可以看到Docker已经处在运行状态。

执行docker info可以看到Docker加速地址已经添加上去了。

再次执行docker run hello-world 可以发现Docker已经正常运行成功。

相关内容

热门资讯

以媒:以色列一架政府专机从本-... 【环球网报道】据《以色列时报》当地时间13日援引航班跟踪网站信息报道,以色列政府专机“锡安之翼”此前...
《临江仙》热度暴涨,白鹿曾舜晞... 《临江仙》真是够争气的。虽然开播第一天,就被全网嘲太难看。但三天的时间过去,热度已经突破9500。热...
给《亮剑》演员的演技排座次:何... 说起国产抗日剧中的“天花板之作”,那《亮剑》绝对配得上这个称号,从上映至今一直都处于爆火的状态,吸引...
曝杜兰特预计下周被交易 马刺领... 北京时间6月13日,据美国媒体消息,杜兰特预计将在下周被太阳队交易出去,目前太阳队正在和多支对杜兰特...
哈梅内伊证实多名军事指挥官和核... △哈梅内伊(资料图) 当地时间13日,伊朗最高领袖哈梅内伊称,以色列将受到严厉惩罚。哈梅内伊同时证实...
《护宝寻踪》要不是黎远光报仇!... 电视剧《护宝寻踪》原来燕小五替穆见晖坐牢,就是为了妻儿能够摆脱贫穷,但是当妻子把92万摆在燕小五面前...
开源神器!Windows 11... IT之家 6 月 13 日消息,科技媒体 Windows Latest 昨日(6 月 12 日)发布...
《护宝寻踪》大结局:一抓二死三... 电视剧《护宝寻踪》即将大结局了,而这部剧的大结局可以说是令人既期待又疑惑,新的剧情中穆见晖被拘留了,...
3C数码市场京东份额远超天猫淘... 随着越来越多带有AI功能的3C数码产品的出现,人们的生活开启了全新的智能体验。根据近日《时代周报》发...
破局500万AI人才荒!传智教... AI浪潮奔涌而至,百万AI人才缺口已成制约产业发展的关键瓶颈。在此背景下,传智教育旗下高端品牌黑马程...
宿迁职业技术学院:全专业AI选... 随着人工智能技术的迅猛发展,AI正逐步渗透到各行各业,成为未来职场不可或缺的核心技能。复旦大学推行“...
如何用豆包音乐生成功能创作AI... 导语 在音乐创作的世界里,借助 AI 工具能让灵感快速落地。接下来就为你详细介绍如何用豆包音乐生成...
AMD 发布下一代开源软件栈技... IT之家 6 月 13 日消息,在今日凌晨的 AMD Advancing AI 2025 活动中,A...
CentOS 系统内置常用命令... CentOS以其出色的稳定性和强大的企业级特性,在服务器领域备受赞誉。掌握系统内置的默认命令,是每位...
人民网发长文点评《长安的荔枝》... 《长安的荔枝》,央视八套黄金档播出。而且还被人民日报多次推荐。按理来说,它应该成为理所应当的爆剧。可...
短剧抢滩大IP 文|LABUBU‍‍‍‍‍‍‍‍‍‍‍不久前《还珠格格》改编短剧《还珠》开机的消息掀起了一阵波澜,上...
打了多少人的脸!黄晓明从被骂“... 前言虽然《潜渊》后几天开播,还是在湖南台这样的地方卫视开播。但是在热度上,却碾压了央视播出的《长安的...
“镂空鞋”今年夏天爆火!不张扬... 花样百搭的缤纷夏日,一双好看、时髦、夏日感的凉鞋,是一切穿搭的起始和风格导向。编织镂空,这种带有典型...
《护宝寻踪》结局:华南王落网,... 不知不觉,《护宝寻踪》大结局了。最新的剧情中,穆见晖跟赵佑林的大战结束,穆见晖把老肖给捅出去,进而证...
TVB视帝新剧演出大获好评,盼... 由TVB双视帝林保怡、张振朗主演新剧《刑侦12》早前在内地已经播出大结局,而TVB翡翠台方面也即将大...