EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
本文基于HD-RK3568-IoT评估板演示Debian系统安装Docker,该方法适用于RK356X全系产品。 HD-RK3568-IOT评估板基于HD-RK3568-CORE 工业级核心板设计(双网口、双CAN、5路串口),接口丰富,适用于工业现场应用需求,亦方便用户评估核心板及CPU 的性能。适用于工业自动化控制、人机界面、中小型医疗分析器、电力等多种行业应用。 ) L' x, @; t# p# c* |2 v
- C1 K. e$ D: ]) x6 T# A
$ y& Q, X5 K$ g x% g1. 检测内核配置使用 Docker 需要内核支持 CGROUP、BRIDGE 等功能,如果内核中未开启相关配置,安装或运行 Docker 会出现各种错误。Docker开源团队提供了一个脚本https://github.com/moby/moby/blob/master/contrib/check-config.sh,用以检测内核配置是否符合Docker运行的要求。
1 |; f" x8 \# D! U下载脚本到源码内核目录下。输入如下命令: chmod 777 check-config.sh ./check-config.sh .config |注:.config需要在内核配置完后才会生成
; W2 m4 H" r J- acheck-config.sh使用方法如下: # ./check_config.sh ./kernel/.config info: reading kernel config from ./kernel/.config ... 1 ^& ~9 X0 R8 E) W3 ^/ V1 f) h
Generally Necessary: - cgroup hierarchy: properly mounted [/sys/fs/cgroup] - app ARMor: 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_KEYS: enabled - CONFIG_VETH: missing - CONFIG_BRIDGE: missing - CONFIG_BRIDGE_NETFILTER: missing - CONFIG_IP_NF_FILTER: missing - CONFIG_IP_NF_TARGET_MASQUERADE: missing - CONFIG_NETFILTER_XT_MATCH_ADDRTYPE: missing - CONFIG_NETFILTER_XT_MATCH_CONNTRACK: missing - CONFIG_NETFILTER_XT_MATCH_IPVS: missing - CONFIG_IP_NF_NAT: missing - CONFIG_NF_NAT: missing - CONFIG_POSIX_MQUEUE: missing 9 h2 g: ^8 X, |* n
Optional Features: - CONFIG_USER_NS: enabled - CONFIG_SECCOMP: enabled - CONFIG_SECCOMP_FILTER: enabled - CONFIG_CGROUP_PIDS: missing - CONFIG_MEMCG_SWAP: missing - CONFIG_MEMCG_SWAP_ENABLED: missing - CONFIG_BLK_CGROUP: missing - CONFIG_BLK_DEV_THROTTLING: missing - CONFIG_CGROUP_PE RF: missing - CONFIG_CGROUP_HUGETLB: missing - CONFIG_NET_CLS_CGROUP: missing - CONFIG_CGROUP_NET_PRIO: missing - CONFIG_CFS_BANDWIDTH: enabled - CONFIG_FAIR_GROUP_SCHED: enabled - CONFIG_RT_GROUP_SCHED: missing - CONFIG_IP_NF_TARGET_REDIRECT: missing - CONFIG_IP_VS: missing - CONFIG_IP_VS_ NFCT: missing - CONFIG_IP_VS_PROTO_TCP: missing - CONFIG_IP_VS_PROTO_UDP: missing - CONFIG_IP_VS_RR: missing - CONFIG_SECURITY_SELINUX: missing - CONFIG_SECURITY_APPARMOR: missing
1 B( E F- M3 ~
+ T; `$ @$ q6 ~! i8 N
_8 q5 h/ }& w2. 安装docker执行以下命令安装Docker: update-alternatives --set iptables /usr/sbin/iptables-legacy update-alternatives --set ip6tables /usr/sbin/ip6tables-legacy / x& r1 ^* A, R5 K
curl -fsSL https://get.docker.com -o get-docker.sh sudo sh get-docker.sh
) B( a: \+ o: Y n) r4 P/ G8 ?echo "{"registry-mirrors":["https://reg-mirror.qiniu.com/"]}" > /etc/docker/daemon.json ) G+ ?( ]* ]" i( a1 S
sudo systemctl daemon-reload sudo systemctl restart docker , o2 ~) B8 J2 x
7 j$ g x9 U* y( I3. 配置国内镜像加速修改配置文件/etc/docker/daemon.json,配置完后重启系统。 {"registry-mirrors": [ "https://ung2thfc.mirror.aliyuncs.com", "https://registry.docker-cn.com", "http://hub-mirror.c.163.com", "https://docker.mirrors.ustc.edu.cn"]} ( H% ^/ N2 a- g3 V$ P. H* P
6 P! D4 ]3 V, V, x7 [' L6 D
4. 验证测试root@hd-rk3568:~ $ docker run hello-world ) U/ E% W7 {+ h0 p& |: z1 p
![]()
4 f0 D+ U3 {, {! Q9 f
若打印信息提示“Hello from Decoker !”则说明已经安装成功,验证通过, ' t+ x2 Z( p! s( L
5. Docker常用操作 | | docker run -d --name my-container my-image | | | docker start my-container | | | | | | | | | | | | | | | docker rmi my-image:1.0.0 | | | docker exec -it my-container bash |
" F( V$ k. v; K! K" `7 T+ t/ l4 A8 {; q* F) A0 H/ j. O
0 }- C6 s: U5 u* w: P+ C% S
+ G1 B' j" y; B9 m
* @8 g, q2 Y% z4 Z0 J% _2 ^. S+ l |