OpenHarmony docker环境搭建

2023年 10月 15日 62.5k 0

OpenHarmony docker环境搭建

要求一台安装ubuntu的虚拟机,vscode软件

安装docker

在 Ubuntu 上安装 Docker 非常直接。我们将会启用 Docker 软件源,导入 GPG key,并且安装软件包。

首先,更新软件包索引,并且安装必要的依赖软件,来添加一个新的 HTTPS 软件源:

sudo apt update
sudo apt install apt-transport-https ca-certificates curl gnupg-agent software-properties-common

使用下面的 curl 导入源仓库的 GPG key:

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -

将 Docker APT 软件源添加到你的系统:

sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"

现在,Docker 软件源被启用了,你可以安装软件源中任何可用的 Docker 版本。

01.想要安装 Docker 最新版本,运行下面的命令。如果你想安装指定版本,跳过这个步骤,并且跳到下一步。

sudo apt update
sudo apt install docker-ce docker-ce-cli containerd.io

02.想要安装指定版本,首先列出 Docker 软件源中所有可用的版本:

sudo apt update
apt list -a docker-ce

可用的 Docker 版本将会在第二列显示。

docker-ce/focal 5:19.03.93-0ubuntu-focal amd64
通过在软件包名后面添加版本=来安装指定版本:

sudo apt install docker-ce= docker-ce-cli= containerd.io
一旦安装完成,Docker 服务将会自动启动。你可以输入下面的命令,验证它:
sudo systemctl status docker
输出将会类似下面这样:

● docker.service - Docker Application Container Engine
     Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled)
     Active: active (running) since Thu 2020-05-21 14:47:34 UTC; 42s ago
...

当一个新的 Docker 发布时,你可以使用标准的sudo apt update && sudo apt upgrade流程来升级 Docker 软件包。

拉取镜像

运行 Docker 软件,打开 CMD 命令行或者 PowerShell 终端,使用指令下载
docker 官方镜像:

docker pull swr.cn-south-1.myhuaweicloud.com/openharmony-docker/openharmony-docker:1.0.0

等待下载完成之后,使用 docker images 可以查看到已下载的 docker 镜像
此时镜像名称太长不方便使用,可以使用重命名操作对镜像重命名:

docker image tag swr.cn-south-1.myhuaweicloud.com/openharmony-docker/openharmony-docker:1.0.0 openharmony-docker:1.0.0

此时使用 docker images 再次查看镜像,发现多出一个名为
openharmony-docker:1.0.0 的镜像
可以执行

docker rmi swr.cn-south-1.myhuaweicloud.com/openharmony-docker/openharmony-docker:1.0.0

删除旧的镜像:
执行

docker run -it openharmony-docker:1.0.0 

指令可以运行镜像可以看到系统直接进入到了/home/openharmony,但是此时仅是容器运行成功了,还没有代码,无法完成开发,接下来需要获取代码

OpenHarmony 代码获取

通过git(不推荐,有时会卡死)

首先要设置git用户名和邮箱,否则拉去代码时会报错

git config --global user.name "Your Name"
git config --global user.email "youremail@yourdomain.com"

拉去代码

repo init -u git@gitee.com:openharmony/manifest.git -b OpenHarmony-3.2-Release -g ohos:mini
repo sync -c
repo forall -c 'git lfs pull'

通过http

repo init -u https://gitee.com/openharmony/manifest.git -b OpenHarmony-3.2-Release -g ohos:mini
repo sync -c
repo forall -c 'git lfs pull'

检验

输入hb -v如果出现版本号代表成功

Vscode 安装

开发板实验需要烧录固件,所以要用到 vscode 编辑器导出固件
到该网址下载最新版的 Visual Studio Code,简称 vscode,下载完成后执行安装. 网址: code.visualstudio.com/

安装 vscode 插件

打开安装好的 vscode 编辑器,点击左侧插件图标,输入 remote ssh
image.png
点击安装图标,等待安装完成,安装完成之后左侧会出现下面的图标
然后重复步骤安装入 dev contains
image.png

远程连接服务器

3、添加服务器连接配置
点击该选项卡,会进入SSH TARGETS的添加,如下图所示:

image.png

点击添加按钮,输入远程服务器的地址,账号和ip根据自己的情况进行修改,如下图所示:

image.png

保存之后,会将刚才的连接信息存储在 C:Userschaxun.sshconfig 中。

此时就可以在SSH TARGETS中看到添加的远程服务器地址了:

image.png

4、连接服务器
右键选择远程服务器,

如果远程服务器能够连接成功,此时会需要你输入密码:

5、基本操作

例如我点击Open Folder,这里就会让你选择打开的文件目录:

点击ok按钮打开 /home/zhaxun 之后,会需要再次输入密码:

启动和连接镜像

启动镜像的方式可以是终端命令行,如果容器已启动,可以选择 attach 连接容器
点击连接容器之后,会弹出一个新窗口,点击左侧上面第一个图标,会显示该
容器内的文件系统(需要一点缓冲时间)
如果界面同以上截图不一样,而是如下所示:
image.png
就点击打开文件夹,在上方弹出的对话框输入/home/openharmony,再点击确
定, 等待片刻就会显示出文件列表,接下来就可以像操作本地文件一样打开文件
并进行编辑,然后修改一个文件:在顶部菜单栏点击终端,再选择新建终端,可以打开终端:
注意观察弹出来的终端,工作目录是否是/home/openharmony,如果不是请检
查前面的操作是否错误或有遗漏
在终端命令行输入:hb set 指令,再输入回车,到达选择开发板的界面,用鼠标
或键盘上下键选择 qemu_mini_system_demo,再敲回车:

  • 选择好了开发板,就可以执行构建命令:
    hb build -f
    此时系统开始构建,由于我们使用的是 docker 环境,在制作镜像的时候环境已
    经准备好了,所以不需要配置其他的脚本或者工具即可以达到编译固件的目的. 最后终端会显示编译成功,我们可以在 out 相应的目录下找到对应的固件,输
    入:ls out/arm_mps2_an386/qemu_mini_system_demo
  • qemu 模拟器的运行
    由于模拟器的运行不涉及到具体的硬件,所以本实验不需要烧录步骤,在
    docker 控制台终端输入./qemu-run,再输入 y 就能运行 qemu 模拟器了,下面是运
    行状态的截图:
    在 qemu 的终端里可以输入 help 命令查看该模拟器支持运行哪些指令:
    同学们可以自行尝试列出来的指令
  • 退出模拟器的运行:
    按住 Ctrl+a 然后同时放开,再按一下 x 键即可退出 qemu 终端可以看出,系统此处退出了 qemu 模拟器回到了 doc
  • 相关文章

    服务器端口转发,带你了解服务器端口转发
    服务器开放端口,服务器开放端口的步骤
    产品推荐:7月受欢迎AI容器镜像来了,有Qwen系列大模型镜像
    如何使用 WinGet 下载 Microsoft Store 应用
    百度搜索:蓝易云 – 熟悉ubuntu apt-get命令详解
    百度搜索:蓝易云 – 域名解析成功但ping不通解决方案

    发布评论