Ubuntu系统安装Docker详细攻略,触觉智能RK3568开发板演示

简介: 如图可以看到Docker已经处在运行状态。执行docker info可以看到Docker加速地址已经添加上去了。再次执行docker run hello-world 可以发现Docker已经正常运行成功。

本文介绍Ubuntu系统安装Docker方法,使用触觉智能EVB3568鸿蒙开发板演示,搭载瑞芯微RK3568,四核A55处理器,主频2.0Ghz,1T算力NPU;支持开源鸿蒙OpenHarmony3.2-5.0,以及Linux、Android等操作系统,接口丰富,开发评估快人一步!

内核配置

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 #当修改了某来源a1.lag.mobi66来源a1.jam.mobi66来源a1.icy.mobi66
些服务的配置后,执行该命令使修改项立即生效

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已经正常运行成功。

相关文章
|
30天前
|
Ubuntu 安全 定位技术
ubuntu桌面版安装教程
完成 Ubuntu 22.04.1 LTS 安装 重启后,看到如下界面,请按【回车】键 使用之前设置的用户名和密码登录系统
|
30天前
|
Ubuntu Linux 数据安全/隐私保护
Windows上快速安装Linux子系统Ubuntu
Installing, this may take a few minutes...WslRegisterDistribution failed with error: 0x800701bcError: 0x800701bc WSL 2 ?????????????????? https://aka.ms/wsl2kernelPress any key to continue... 原因是 wsl1 升级到 wsl2 之后,内核却没有升级。 解决:下载最新的wsl安装包(wsl安装包)
|
30天前
|
Web App开发 Ubuntu 测试技术
体验Ubuntu系统安装与使用
综上所述,Ubuntu操作系统凭借其出色的易用性、安全性、丰富的软件资源和强大的社区支持,在全球范围内赢得了广泛的认可和好评。无论是在个人电脑还是高端服务器上,它都能提供稳定、高效的性能,满足用户的各种需求。
|
2月前
|
人工智能 自然语言处理 运维
【新模型速递】PAI-Model Gallery云上一键部署Qwen3-Coder模型
Qwen3-Coder 是通义千问最新开源的 AI 编程大模型正式开源,拥有卓越的代码和 Agent 能力,在多领域取得了开源模型的 SOTA 效果。PAI 已支持最强版本 Qwen3-Coder-480B-A35B-Instruct 的云上一键部署。
|
30天前
|
算法 安全 量子技术
“RSA还能撑多久?”——聊聊量子计算下密码学的危与机
“RSA还能撑多久?”——聊聊量子计算下密码学的危与机
116 0
|
30天前
|
Ubuntu 安全 搜索推荐
揭秘Ubuntu系统的优势,你想知道吗?
对于移动设备,Ubuntu系统还在不断地探索与支持。众多Ubuntu系统的社区和开发人员正在探索Ubuntu系统在移动领域的应用,以提供全新的、更加开放和稳定的移动系统体验。 对于云服务器,Ubuntu系统作为一种轻量级的操作系统,越来越受到云服务提供商的青睐。Ubuntu系统可以作为一种安全和高效的云服务器操作系统,无论在公有云、私有云或混合云里,都可以提供出色的性能和体验。
|
30天前
|
传感器 Python
ACT-America:L2 美国东部大气 CO2、CO、CH4 和 O3 浓度现场
该数据集包含ACT-America项目期间在美国东部和中部地区采集的大气CO2、CO、CH4和O3浓度数据,覆盖2016至2019年五个飞行季,采用B200和C-130H飞机平台搭载高精度仪器进行实地测量。
42 0
|
30天前
|
Ubuntu Unix Linux
在Windows上轻松安装和使用Ubuntu的方法详解
继续点击“Continue”按钮以继续安装流程,随后选择清理磁盘并安装操作系统的选项。 接下来,在安装过程中,你需要选择时区。为了与你的地理位置相匹配,请选择中国上海作为你的时区设置。 在安装过程中,你还需要设置计算机的名称以及账号密码。请务必牢记这些信息,因为它们将作为你登录系统的凭证。
|
30天前
|
存储 Ubuntu 安全
Ubuntu 与 Manjaro Linux:你应该选择哪一个?
除了完全擦除当前机器并安装 Linux之外,您还可以 在 Windows 旁边同时启动一个发行版,尽管这是一个乏味的过程,我们并不总是推荐这样做。更好的选择是 从 USB 驱动器启动 Linux 发行版 ,以同时尝试 Ubuntu 和 Manjaro。如果您熟悉虚拟机,那么 在 VirtualBox 中安装和使用 Linux 发行版也很容易。 当然,您还需要这些发行版的ISO 文件,因此请访问Ubuntu和Manjaro 的下载页面 开始使用。