OpenHarmony docker环境搭建所见的问题和解决

2023-10-29 12:30

本文主要是介绍OpenHarmony docker环境搭建所见的问题和解决,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

【摘要】OpenHarmony docker环境搭建需要一台安装Ubuntu的虚拟机,并且虚拟机中需要有VScode。
整个搭建流程请参考这篇博客:OpenHarmony docker环境搭建-云社区-华为云 (huaweicloud.com)
上篇博主是用Ubuntu的服务器进行环境搭建的,在使用VScode时用到SSH登录虚拟机。
本篇采用Ubuntu桌面版对OpenHarmony docker环境进行搭建
【不建议使用桌面版进行配置,博主这边遇到的问题都是桌面版的!!!】。

文章目录

  • 一、安装Docker
  • 二、下载官方Docker镜像
    • 1.引入库
  • 三、OpenHarmony代码拉取
  • 四、VScode下载
    • 4.1、VScode下载后打不开的问题
    • 4.2、VScode 识别不了容器问题


一、安装Docker

在虚拟机中安装Docker的步骤跟着官网的教程一步步来就行:Docker官方下载文档

二、下载官方Docker镜像

1.引入库

接下来的重点是下载官方docker镜像。

运行Docker软件,使用以下命令下载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 指令可以运行镜像。

三、OpenHarmony代码拉取

这里拉取方法建议使用OpenHarmony docker环境搭建-云社区-华为云 (huaweicloud.com)这篇博客中的第二种:通过http获取代码,详细内容请参考该博客(这里不在详细讲解)。

四、VScode下载

4.1、VScode下载后打不开的问题

博主这里在安装的过程中为了省事,将自己的用户权限设置成了root权限(为了方便在运行时不加sudo),这个操作也就导致我踩到了一个坑:VScode打不开的问题。这里之所以打不开,问题恰恰出现在root权限上,在Ubuntu默认的状态下,root权限是不允许打开VScode的,所以这里需要将原本对普通用户授予root权限的操作再做一次变成普通用户即可。可以参考这篇博主的文章做一遍:将普通用户授予root权限

4.2、VScode 识别不了容器问题

博主这里在桌面版的VScode中下载了Dev Containers插件,但是却在识别容器中发现,识别不到正在运行的容器!!!

在这里插入图片描述
接着准备下载桌面版的docker,在官网中我查询到,要下载桌面版Docker需要进行KVM virtualization support(KVM虚拟化支持)。
在这里插入图片描述
博主在这里遇到了第二个坑:虚拟机CPU不支持KVM虚拟化!!!
在这里插入图片描述
博主这里的虚拟机不支持虚拟化!!!(VMware Worstation)所以就陷入了死循环,不过解决办法还是有的。

既然桌面版的没法用,那就转战服务器版本!!!

下载VMware Worstation Pro 17 版本,并且配置一台Ubuntu的服务器版,然后按照步骤从头来配置就行了。

这篇关于OpenHarmony docker环境搭建所见的问题和解决的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/300641

相关文章

如何用Docker运行Django项目

本章教程,介绍如何用Docker创建一个Django,并运行能够访问。 一、拉取镜像 这里我们使用python3.11版本的docker镜像 docker pull python:3.11 二、运行容器 这里我们将容器内部的8080端口,映射到宿主机的80端口上。 docker run -itd --name python311 -p

好题——hdu2522(小数问题:求1/n的第一个循环节)

好喜欢这题,第一次做小数问题,一开始真心没思路,然后参考了网上的一些资料。 知识点***********************************无限不循环小数即无理数,不能写作两整数之比*****************************(一开始没想到,小学没学好) 此题1/n肯定是一个有限循环小数,了解这些后就能做此题了。 按照除法的机制,用一个函数表示出来就可以了,代码如下

hdu1043(八数码问题,广搜 + hash(实现状态压缩) )

利用康拓展开将一个排列映射成一个自然数,然后就变成了普通的广搜题。 #include<iostream>#include<algorithm>#include<string>#include<stack>#include<queue>#include<map>#include<stdio.h>#include<stdlib.h>#include<ctype.h>#inclu

OpenHarmony鸿蒙开发( Beta5.0)无感配网详解

1、简介 无感配网是指在设备联网过程中无需输入热点相关账号信息,即可快速实现设备配网,是一种兼顾高效性、可靠性和安全性的配网方式。 2、配网原理 2.1 通信原理 手机和智能设备之间的信息传递,利用特有的NAN协议实现。利用手机和智能设备之间的WiFi 感知订阅、发布能力,实现了数字管家应用和设备之间的发现。在完成设备间的认证和响应后,即可发送相关配网数据。同时还支持与常规Sof

阿里开源语音识别SenseVoiceWindows环境部署

SenseVoice介绍 SenseVoice 专注于高精度多语言语音识别、情感辨识和音频事件检测多语言识别: 采用超过 40 万小时数据训练,支持超过 50 种语言,识别效果上优于 Whisper 模型。富文本识别:具备优秀的情感识别,能够在测试数据上达到和超过目前最佳情感识别模型的效果。支持声音事件检测能力,支持音乐、掌声、笑声、哭声、咳嗽、喷嚏等多种常见人机交互事件进行检测。高效推

如何解决线上平台抽佣高 线下门店客流少的痛点!

目前,许多传统零售店铺正遭遇客源下降的难题。尽管广告推广能带来一定的客流,但其费用昂贵。鉴于此,众多零售商纷纷选择加入像美团、饿了么和抖音这样的大型在线平台,但这些平台的高佣金率导致了利润的大幅缩水。在这样的市场环境下,商家之间的合作网络逐渐成为一种有效的解决方案,通过资源和客户基础的共享,实现共同的利益增长。 以最近在上海兴起的一个跨行业合作平台为例,该平台融合了环保消费积分系统,在短

购买磨轮平衡机时应该注意什么问题和技巧

在购买磨轮平衡机时,您应该注意以下几个关键点: 平衡精度 平衡精度是衡量平衡机性能的核心指标,直接影响到不平衡量的检测与校准的准确性,从而决定磨轮的振动和噪声水平。高精度的平衡机能显著减少振动和噪声,提高磨削加工的精度。 转速范围 宽广的转速范围意味着平衡机能够处理更多种类的磨轮,适应不同的工作条件和规格要求。 振动监测能力 振动监测能力是评估平衡机性能的重要因素。通过传感器实时监

搭建Kafka+zookeeper集群调度

前言 硬件环境 172.18.0.5        kafkazk1        Kafka+zookeeper                Kafka Broker集群 172.18.0.6        kafkazk2        Kafka+zookeeper                Kafka Broker集群 172.18.0.7        kafkazk3

安装nodejs环境

本文介绍了如何通过nvm(NodeVersionManager)安装和管理Node.js及npm的不同版本,包括下载安装脚本、检查版本并安装特定版本的方法。 1、安装nvm curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.0/install.sh | bash 2、查看nvm版本 nvm --version 3、安装

缓存雪崩问题

缓存雪崩是缓存中大量key失效后当高并发到来时导致大量请求到数据库,瞬间耗尽数据库资源,导致数据库无法使用。 解决方案: 1、使用锁进行控制 2、对同一类型信息的key设置不同的过期时间 3、缓存预热 1. 什么是缓存雪崩 缓存雪崩是指在短时间内,大量缓存数据同时失效,导致所有请求直接涌向数据库,瞬间增加数据库的负载压力,可能导致数据库性能下降甚至崩溃。这种情况往往发生在缓存中大量 k