OpenHarmony之docker容器的基本用法
创始人
2025-05-30 13:03:40
0

Docker使用示例

docker移植至OpenHarmony的过程可参考:https://blog.51cto.com/u_14601312/5692202

下面以rk3568 OpenHarmony为例,介绍一下如何进行容器制作、导入及使用:

文件准备

打开Windows CMD,输入hdc shell命令进入RK3568 shell命令行,在/data分区下创建目录,并将镜像制作运行需要的文件(Dockerfile 文件、依赖库等)放至该目录。

hdc shell
mkdir /data/dockerui# 在另外一个CMD窗口中传输文件:
hdc file send D:\cloud_station_docker\docker_example\Dockerfile /data/dockerui
hdc file send D:\cloud_station_docker\docker_example\dockerui.jar /data/dockerui

进入Dockerfile所在目录制作镜像

cd /data/dockerui/
docker build -t dockerui .

查看镜像

制作完成后,即可查看我们制作的镜像信息

docker images

运行容器镜像

运行时通过–name参数指定容器名称,通过-p指定容器内外的端口映射,通过-v指定容器内外的文件夹映射路径。

docker run --name dockerui -d -p 9000:9000 -v /data/dockerui:/dockerui -v /var/run/docker.sock:/var/run/docker.sock dockerui:latest

查看运行的容器

docker ps –a

确认容器正常运行

在shell中,输入ifconfig查看开发板ip地址,然后再电脑浏览器访问java服务器相应IP端口,能够正常看到运行的web页面。

设置容器自启动

通常情况下,我们部署完容器后,都希望系统断电、重启后,容器能够自动运行起来,只需通过如下指令设置即可。

docker update --restart=always dockerui

导出镜像

若想将制作好的镜像部署到其它开发板,则需导出镜像。

docker save -o /data/dockerui/dockerui_images.tar dockerui:latest

耐心等待一段时间后,即可查看导出的镜像包

ls –l /data/dockerui/

在另外一个CMD窗口中执行hdc文件接收命令,将打包的镜像文件从开发板导出,用于其它开发板镜像部署使用。(镜像如果较大,耗时可能比较久,请耐心等待)

停止、删除容器

docker stop <容器ID>
docker rm <容器ID>

删除镜像

docker rmi <镜像ID>

导入镜像

docker load < /data/dockerui/dockerui_images.tar

注意事项

目前,RK3568仅/data分区具有可读、可写权限,文件传输时建议放在/data分区目录下。
如需要操作/分区目录或/vendor分区目录下的文件,请执行hdc shell进入OpenHarmony命令行后,执行重新挂载命令,将分区权限改为可读可写。

mount -o rw,remount -t auto /
mount -o rw,remount -t auto /vendor

相关内容

热门资讯

【ZYNQ】无串口配置 Lin... 背景 基于 Zynq 自制板卡搭载了嵌入式 Linux 系统,因无预留串口设备...
【面试】-- Hive高频面试... 一、请描述一下数据倾斜,并提供解决方案?  定义:由于数据分布不均匀,导致大量数据集中到一点,造成...
BFC块级格式化上下文 一、概念 BFC - Block Formatting Context 块级格式化上下文 BFC的定...
Proteus常用元件查找对照   Proteus的这25大类元器件分别为: Analog ICs 模拟ICCMOS ...
DRAM功能介绍与基础概念 目录   ROM与RAM DRAM定义与形态 DRAM存储单元 DRAM架构和工作流程 存储器是计算...
C++面经 编译、链接与库编译单文件编译多文件编译动态链接与静态链接静态链接动态链接面向对象c++...
python例程:玛丽冒险 目录《玛丽冒险》程序使用说明开发环境要求运行方法主要代码展示源码及说明文档下载路径 《玛丽冒险》程...
学习笔记-架构的演进之服务网格... 文章目录前言通信的成本第一阶段第二阶段第三阶段第四阶段第五阶段总结附 前言 Kubernetes 为...
大数据集群保姆级安装教程——F... 大数据集群保姆级安装教程——Flume 1.1 安装地址 (1) Flu...
(大数据开发随笔5)Scala... 泛型 泛型类 // 创建一个通用类,技能操作Int类型,又能操作Stri...
java实现“数据平滑升级” 文章目录一、摘要二、前提场景说明:三、项目用到的脚本和代码1.项目目录长这样2.jav...
操作系统概述 操作系统概述 文章目录操作系统概述操作系统的基本概念4个特征并发(Concurrenc...
leetcode每日一题27 263. 丑数 按题意写 class Solution {public:bool isUgly(in...
从0开始学python -65 Python urllib-2 模拟头部信息 我们抓取网页一般需要对 headers(...
kafka-producer ... Kafka需要在吞吐量和延迟之间取得平衡,可通过下面两个参数控制。 batch.size 当多个消息...
tomcat 9 编码问题导致... tomcat编码设置问题 由于刚更换tomcat 9 ,没有修改配置文件,...
XShell安装配置教程及云服... 目录一、 XShell的作用二、 下载XShell1.访问XShell官网,填写姓名和...
批量下载文档有救了:Pytho... 人生苦短,我用python 最近毕业季要做毕业设计的同学真的特别多 需要大量文献、文档...
从数据中获得成功!学会如何使用... 在当今数字化的世界中,社交媒体已成为企业推广产品和服务的主要渠道之一。然而࿰...
tpm2-tools源码分析之... 接前一篇文章tpm2-tools源码分析之tpm2_getrandom.c(1...