0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

基于RV1126开发板的板卡Docker环境部署方法

ljx2016 ? 来源:ljx2016 ? 作者:ljx2016 ? 2025-04-16 10:04 ? 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

1. Docker介绍

Docker是一个使用最广泛的开源容器引擎,为每一个应用提供完全隔离的运行环境,用户可以在环境中配置不同的工具软件,并且不同环境之间相互不影响,当前已经在EASY-EAI-Nano完成适配,用户可以随时随地进行部署。Dockerfile、Image(镜像)和Container(容器)为Docker中的三个重要概念。通过Image我们可以创建许多个Container,通过Dockerfile这个自动化脚本可以创建Image。

Dockerfile:中文名叫镜像描述文件,是一个包含用于组合镜像目录的文本文档,也可以叫“脚本”。用户通过docker build命令,读取Dockerfile中的指令安装步骤自动生成镜像。

Image:是一个文件系统,提供了容器运行时需要用到的文件和参数配置。相当于平时在使用某个软件时需要下载的安装包,也相当于安装操作系统时需要用到 ISO 文件。

Container:是一种打包软件的方式,因为它不依赖于环境。 应用程序的所有代码、库和依赖配置项都打包到 容器 中。 与虚拟机不同,容器不是创建一个完整的虚拟操作系统,而是允许应用程序使用与它们正在运行的系统相同的 Linux 内核,并且只需要应用程序与尚未在主机上运行的东西一起交付。

2. 部署Docker环境

2.1 Docker安装

执行adb shell命令,进入板卡运行环境。

adb shell

wKgZO2f_EGaACypEAACOVQLk9o8955.png

进入板卡后,更新软件包数据库(nano要能访问外网),如下所示:

apt-get update

wKgZPGf_EGaAERMkAABz_rDZwLE097.png

安装Docker(安装的时间可能有一点长,请耐心等待)

apt-get install docker.io

wKgZO2f_EGaAQ7PlAAB5FoEn1pg188.png

查看Docker是否安装成功

systemctl enable docker docker version

wKgZPGf_EGaAJptsAAC8tXC80q4508.png

2.2 获取镜像

用户可根据自己的需求获取镜像,一种是使用他人打包好,并通过网络(主要是docker官方的docker hub和一些类似的镜像托管网站)进行分享的镜像,获取这种镜像的命令如下所示:

docker pull ubuntu

wKgZO2f_EGeADr_VAABqNhKico8007.png

此方法未指定标签,Docker Engine会使用 :latest 作为默认标签拉取镜像。

另一种则是在本地将镜像保存为本地文件,直接使用生成的文件进行共享。

查看本机中已经保存(下载)的镜像信息列表

docker images

wKgZPGf_EGeAWsfVAACBOz9g8PY868.png

2.3 运行Docker容器及基本操作

我们有两种方法启动一个容器。方法一: 使用Docker 镜像的 TAG (标签:指的是一个特定的镜像快照) 启动;方法二: 使用 ImageID(镜像 ID: 镜像对应的唯一识别码) 启动。以下演示将如何【使用 Docker 镜像的 TAG】启动容器:

docker run -t -i ubuntu:latest /bin/bash

-t:在 Ubuntu 容器内分配一个伪终端。

-i:通过从容器获取一个标准输入(STDIN),允许我们创建一个可交互的连接。

ubuntu:latest:标签为 latest 的 Ubuntu Docker 镜像。

/bin/bash:新容器的 BASH shell。这个是可选项。如果你不加 shell 的话,会分配默认的 shell 给容器。

启动容器后,会自动进入容器的 shell(命令行):

wKgZO2f_EGeAB_ewAAA7sTn8vLk485.png

按 CTRL+P 然后 CTRL+Q 可以从当前容器中脱离回到主机系统的终端。注意:我们只是从容器中脱离,但是没有让容器停止。它仍然在后台中运行。、

在Docker 主机的终端,运行下面的命令来找到容器的名字和ID

docker ps -a

wKgZPGf_EGeAVkvMAAJHK4HYMpM520.png

查找到ID后我们就可以对容器进行相关操作了。

暂停运行中的容器

docker pause 容器ID号

wKgZO2f_EGiAJrRrAAJtq5N0HHk364.png

启动容器

docker start 容器名字wKgZPGf_EGiAJIU0AAAe3pBf6_4980.png

移除容器

首先需要终止(关闭)运行中的容器

docker stop 容器ID号

wKgZO2f_EGiAJRoaAABOzFvIrXs689.png

如果不再需要所有的容器,一个一个的删除多个容器会是一项繁琐的工作。所以,我们可以把所有停止的容器一次性删掉,运行:把所有停止的容器一次性删掉

docker container prune

wKgZPGf_EGiAYbS2AACiUzcfgZg742.png

删除后我们docker ps -a查看所有容器显示已经为空

删除docker镜像

docker rmi 镜像ID

wKgZO2f_EGmAAiYaAADDTuSzn40222.png




审核编辑 黄宇

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 板卡
    +关注

    关注

    3

    文章

    146

    浏览量

    17249
  • Docker
    +关注

    关注

    0

    文章

    518

    浏览量

    13122
  • rv1126
    +关注

    关注

    0

    文章

    110

    浏览量

    3635
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    基于RV1126开发板实现人脸检测方案

    RV1126开发板上实现人脸检测:在图像中找出人脸,以及每张人脸的landmarks位置。 方案设计逻辑流程图,方案代码分为分为两个业务流程,主体代码负责抓取、合成图像, 算法代码负责人脸检测功能。
    的头像 发表于 04-21 17:59 ?565次阅读
    基于<b class='flag-5'>RV1126</b><b class='flag-5'>开发板</b>实现人脸检测方案

    基于RV1126开发板实现人脸检测方案

    RV1126开发板上实现人脸检测:在图像中找出人脸,以及每张人脸的landmarks位置。 方案设计逻辑流程图,方案代码分为分为两个业务流程,主体代码负责抓取、合成图像, 算法代码负责人脸检测功能。
    的头像 发表于 04-21 14:00 ?13次阅读
    基于<b class='flag-5'>RV1126</b><b class='flag-5'>开发板</b>实现人脸检测方案

    基于RV1126开发板实现人脸识别方案

    RV1126开发板上实现人脸识别:在图像中找出人脸,并与数据库进行比对,得出该人脸对应的身份信息。 方案设计逻辑流程图,方案代码分为分为三个业务流程,主体代码负责抓取、合成图像,算法代码负责人脸识别功能,按键监听负责修改数据库工作状态。
    的头像 发表于 04-21 10:24 ?107次阅读
    基于<b class='flag-5'>RV1126</b><b class='flag-5'>开发板</b>实现人脸识别方案

    基于RV1126开发板实现人脸检测方案

    RV1126开发板上实现人脸检测:在图像中找出人脸,以及每张人脸的landmarks位置。 方案设计逻辑流程图,方案代码分为分为两个业务流程,主体代码负责抓取、合成图像, 算法代码负责人脸检测功能。
    的头像 发表于 04-21 10:21 ?99次阅读
    基于<b class='flag-5'>RV1126</b><b class='flag-5'>开发板</b>实现人脸检测方案

    基于RV1126开发板实现驾驶员行为检测方案

    RV1126开发板上实现驾驶员行为检测:通过图像识别出这几种行为:打电话、抽烟、疲劳驾驶。
    的头像 发表于 04-18 17:47 ?354次阅读
    基于<b class='flag-5'>RV1126</b><b class='flag-5'>开发板</b>实现驾驶员行为检测方案

    基于RV1126开发板实现人员检测方案

    RV1126开发板实现人员检测:在图像中找出人。 方案设计逻辑流程图,方案代码分为分为两个业务流程,主体代码负责抓取、合成图像,算法代码负责人员检测功能。
    的头像 发表于 04-18 17:14 ?220次阅读
    基于<b class='flag-5'>RV1126</b><b class='flag-5'>开发板</b>实现人员检测方案

    RV1126 yolov8训练部署教程

    本教程针对目标检测算法yolov8的训练和部署到EASY-EAI-Nano(RV1126)进行说明,而数据标注方法可以参考我们往期的文章。
    的头像 发表于 04-18 15:18 ?820次阅读
    <b class='flag-5'>RV1126</b> yolov8训练<b class='flag-5'>部署</b>教程

    基于RV1126开发板的resnet50训练部署教程

    本教程基于图像分类算法ResNet50的训练和部署到EASY-EAI-Nano(RV1126)进行说明
    的头像 发表于 04-18 15:07 ?563次阅读
    基于<b class='flag-5'>RV1126</b><b class='flag-5'>开发板</b>的resnet50训练<b class='flag-5'>部署</b>教程

    基于RV1126开发板的音频硬件电路设计

    ? ? ? ?核心自带音频输入输出功能,无需外接音频编解码芯片,节省成本与空间。核心核上的PMIC RK809-2芯片内部集成高性能音频Codec,RV1126通过I2S1接口和RK809-2
    的头像 发表于 04-17 09:31 ?427次阅读
    基于<b class='flag-5'>RV1126</b><b class='flag-5'>开发板</b>的音频硬件电路设计

    基于RV1126开发板的按键测试方法与例程

    RV1126开发板的按键测试方法与例程详细描述
    的头像 发表于 04-15 17:03 ?448次阅读
    基于<b class='flag-5'>RV1126</b><b class='flag-5'>开发板</b>的按键测试<b class='flag-5'>方法</b>与例程

    基于RV1126开发板网络配置方法

    RV1126开发板网络硬件资源有:以太网、WiFi,采用的网络配置方案是:Netplan。 ? ? ? ?Netplan是一个用于配置Linux网络的简单工具。用户只需要一个yaml格式的文件去
    的头像 发表于 04-15 14:57 ?444次阅读
    基于<b class='flag-5'>RV1126</b><b class='flag-5'>开发板</b>网络配置<b class='flag-5'>方法</b>

    基于RV1126开发板的人员检测算法开发

    RV1126开发人员检测AI算法组件
    的头像 发表于 04-14 13:56 ?371次阅读
    基于<b class='flag-5'>RV1126</b><b class='flag-5'>开发板</b>的人员检测算法<b class='flag-5'>开发</b>

    基于RV1126开发板的人脸检测算法开发

    RV1126开发人脸检测算法组件
    的头像 发表于 04-14 10:19 ?410次阅读
    基于<b class='flag-5'>RV1126</b><b class='flag-5'>开发板</b>的人脸检测算法<b class='flag-5'>开发</b>

    RV1126 实现人脸检测方案

    基于RV1126开发板实现人脸检测方案,充分体现了电子方面的实践经验和目标检测技术。
    的头像 发表于 04-14 09:25 ?362次阅读
    <b class='flag-5'>RV1126</b> 实现人脸检测方案

    RV1126 实现简单的UI开发示例

    RV1126上实现简单的UI开发实例
    的头像 发表于 04-09 16:08 ?519次阅读
    <b class='flag-5'>RV1126</b> 实现简单的UI<b class='flag-5'>开发</b>示例