RK3566嵌入式开发板运行Coco AI sever

之前在泰山派上运行了Easysearch,这次也想着是不是可以在泰山派开发板RK3566上运行Coco server,毕竟这板子功耗小,适合常开。

我的RK3566上是Armbian,但是没有配置网络环境,访问Dockerhub有问题,所以从Macbook 上下载玩,然后通过离线方式导成tar文件。我的镜像改了tag叫做cocoai-arm:test,你也可以不改。

复制代码
docker save -o cocoai-arm_test.tar cocoai-arm:test

然后通过SCP上传到RK3566的开发板

复制代码
scp cocoai-arm_test.tar lckfb@192.168.5.36:~ 
** WARNING: connection is not using a post-quantum key exchange algorithm.
** This session may be vulnerable to "store now, decrypt later" attacks.
** The server may need to be upgraded. See https://openssh.com/pq.html
lckfb@192.168.5.36's password: 
cocoai-arm_test.tar                            14%  125MB   5.6MB/s   02:14 ETA^cocoai-arm_test.tar                            16%  143MB   5.7MB/s   02:10 ETA^cocoai-arm_test.tar                            38%  337MB   5.7MB/s   01:35 ETA
cocoai-arm_test.tar                            44%  391MB   5.5MB/s   01:29 ETA

补充:这个 warning 主要是 SSH 协商算法提示,不影响传输本身。真正要关注的是传输速度和是否中断------毕竟 900MB 级别的镜像,板子这边 IO 慢一点就容易"感觉很久"。

然后ssh到开发板上,使用docker laod命令还原这个Docker镜像。

复制代码
root@lckfb:/home/lckfb# docker load -i cocoai-arm_test.tar
45e40363867d: Loading layer  336.5MB/922.7MB

这个过程会花费一些时间,所以有时候假死直接等待就好了。漫长的时间过去之后,我们可以通过Docker images来查看镜像,还有一个Easysearch 镜像,是我之前测试的,也能够在嵌入式开发板上运行的很好。

复制代码
root@lckfb:/home/lckfb# docker images
REPOSITORY              TAG       IMAGE ID       CREATED        SIZE
cocoai-arm              test      172b428f2dcf   45 hours ago   915MB
infinilabs/easysearch   1.15.0    295014c1f959   5 months ago   697MB

docker load "假死"一般是写盘/解包慢,我这个板子的 eMMC 速度就很一般。

顺手可以记一下:板子上镜像多了以后,存储空间会很快见底,后续最好固定一个清理策略(比如只留当前版本)。

然后使用这个命令启动,然后使用Docker PS查看。

复制代码
docker run -d --name cocoserver -p 9000:9000 \
           -v coco_data_vol:/app/easysearch/data \
           -v coco_config_vol:/app/easysearch/config \
           -v coco_logs_vol:/app/easysearch/logs \
              cocoai-arm:test

图:容器已经跑起来,端口映射也生效。
我当时会顺手确认几个问题:

  • STATUS 是不是一直 Up,有没有出现反复重启(Restarting)?
  • PORTS 是否显示 0.0.0.0:9000->9000/tcp(如果只绑到 127.0.0.1,局域网其他设备就访问不到)
  • 容器名 cocoserver 固定后,后续排查日志/重启都更方便:docker logs -f cocoserver
    开发板的性能有限,所以初始化的时候需要多等一会。

图:初始化日志在跑,说明服务在"慢慢起身"。
这张图我会重点盯两类信息:

  • 有没有明显的报错关键词:error / exception / failed / oom / killed
  • 有没有持续输出(哪怕很慢)------只要日志还在动,一般就不是卡死
    补充一个小习惯: 如果你怀疑卡住了,可以开另一个窗口 docker stats 看 CPU/内存是否还有波动;也可以 docker logs --tail 200 cocoserver 快速看最近输出。

漫长的等待之后,CPU很清闲,不过内存快用满了。

补充: 这种"CPU 很闲、内存紧张"的状态,在小板跑 Java/搜索组件/AI 服务时很常见,能跑起来不奇怪,关键是别被 OOM 一刀带走。

到这里,Coco AI Server 算是成功在 RK3566 上跑起来了:容器状态正常、日志能持续输出、端口映射也能对外提供访问。

相关推荐
lisw052 小时前
AI与AI代理:概念、区别与联系!
人工智能·机器学习·人工智能代理
无心水2 小时前
【任务调度:数据库锁 + 线程池实战】1、多节点抢任务?SELECT FOR UPDATE SKIP LOCKED 才是真正的无锁调度神器
人工智能·分布式·后端·微服务·架构
本是少年2 小时前
深度学习系列(一):经典卷积神经网络(LeNet)
人工智能·深度学习·cnn
王解2 小时前
第一篇:初识 nanobot —— 一个微型 AI Agent 的诞生
人工智能·nanobot
瓦力的狗腿子3 小时前
AI技术的发展为卫星控制系统研发带来的影响与思考
人工智能
人工智能AI技术3 小时前
YOLOv9目标检测实战:用Python搭建你的第一个实时交通监控系统
人工智能
小雨中_3 小时前
2.7 强化学习分类
人工智能·python·深度学习·机器学习·分类·数据挖掘
拯救HMI的工程师3 小时前
【拯救HMI】工业HMI字体选择:拒绝“通用字体”,适配工业场景3大要求
人工智能
lczdyx3 小时前
【胶囊网络】01-2 胶囊网络发展历史与研究现状
人工智能·深度学习·机器学习·ai·大模型·反向传播