华为云服务器arm64上安装etcd与apisix-dashboard(未成功,卡在build时yarn install报错/wget返回异常值)

本文主要是介绍华为云服务器arm64上安装etcd与apisix-dashboard(未成功,卡在build时yarn install报错/wget返回异常值),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

环境

华为云服务器 CentOS8 with arm

etcd

ref:etcd软件移植centos7.6-arm

  1. 从github上下载etcd的arm64的tar包(注意修改为需要的版本) wget https://github.com/etcd-io/etcd/releases/download/v3.4.0/etcd-v3.4.0-linux-arm64.tar.gz
  2. 解压 tar -xzvf etcd-v3.4.0-linux-arm64.tar.gz 或者指定解压目录
  3. cd到该目录
  4. ls可以看到包含etcdetcdctl的二进制文件,但此时直接运行etcd会出现错误
    etcd on unsupported platform without ETCD_UNSUPPORTED_ARCH=arm64 set.
  5. 解决方法是设置环境变量export ETCD_UNSUPPORTED_ARCH=arm64,最好放到~/.bash_profile里,然后source一下
  6. 再次etcd就好了

apisix-dashboard

可以选择Docker安装或是源码编译安装

Docker安装准备

  1. Docker
  2. etcd 3.4.0+

安装

根据Building and Launching with Docker利用docker来安装

  1. 下载apisix-dashboard的Dockerfile
  2. 在下载好Dockerfile的目录下执行docker build -t apisix-dashboard:$tag . --build-arg ENABLE_PROXY=true (特供版,太贴心了)

使用

  1. 在你自己主机里准备一份配置文件conf.yaml准备覆写容器里的默认配置文件
  2. 启动Dashboard docker run -d -p 9000:9000 -v /path/to/conf.yaml:/usr/local/apisix-dashboard/conf/conf.yaml --name apisix-dashboard apisix-dashboard:$tag $tag变量是自己设置的
  3. 看看有没有启动成功docker ps -a
  4. 如果可以的话就去http://127.0.0.1:9000看看,默认用户名和密码都是admin
  5. 关闭docker stop apisix-dashboard

tips:多次构建镜像时建议不要使用缓存,docker build -t apisix-dashboard:$tag . --no-cache=true

如果是自己使用源码安装的话需要

  1. golang 1.13+
  2. Node.js 10.23.0+ wget https://nodejs.org/dist/v14.15.4/node-v14.15.4-linux-arm64.tar.xz (这里有个tips,官网给出的armv7就是32位,armv8就是64位,一开始还不知道)
  3. 把node解压之后的目录下的./lib/node_modules直接复制到/usr/bin下就可以使用npm了
  4. Yarn npm install yarn -g 注意使用全局下载不然执行命令的时候会找不到yarn
  5. cd到apisix-dashboard文件夹下然后make build

附下载源码包后的编译安装步骤:解压->./configure->make->make install

  1. 在运行之前确保etcd 3.4.0+已经安装且正在运行
  2. 根据你自己的环境,检查output/conf/conf.yaml中的配置
  3. 启动dashboard cd到./output然后nohup ./manager-api &后台运行
  4. 如果没改相关配置,访问http://127.0.0.1:9000来使用这玩意儿

出现的问题

到make build这一步时一直卡在这个报错上:

Build the Manager API successfully
yarn install v1.22.10
[1/5] Validating package.json...
[2/5] Resolving packages...
[3/5] Fetching packages...
[------------------------------------------------------------------------------------------------------------] 
0/2361/bin/bash: line 1:  6693 Segmentation fault      (core dumped) yarn install
make: *** [Makefile:39: build] Error 139

Segmentation fault (core dumped) yarn install 不知道为什么 没解决。
然后换了阿里云服务器 x86的 这块莫名其妙过了
然后启动按照里面执行第二部docker run 但是完全起不来啊。没动静,ps -a一下就是退出了。
发现是build的时候

The command '/bin/sh -c set -x     
&& wget https://github.com/apache/apisix-dashboard/archive/${APISIX_DASHBOARD_VERSION}.tar.gz -O /tmp/apisix-dashboard.tar.gz 
&& mkdir /usr/local/apisix-dashboard     
&& tar -xvf /tmp/apisix-dashboard.tar.gz -C /usr/local/apisix-dashboard --strip 1' 
returned a non-zero code: 1

现在尝试在阿里云上手动编译。。。但是卡在了webpack 92% 查了一下说是多线程的问题,但是我没找到webpack的配置文件在哪。遂放弃。
然后在我自己的mac上安上了。。

这篇关于华为云服务器arm64上安装etcd与apisix-dashboard(未成功,卡在build时yarn install报错/wget返回异常值)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

Python UV安装、升级、卸载详细步骤记录

《PythonUV安装、升级、卸载详细步骤记录》:本文主要介绍PythonUV安装、升级、卸载的详细步骤,uv是Astral推出的下一代Python包与项目管理器,主打单一可执行文件、极致性能... 目录安装检查升级设置自动补全卸载UV 命令总结 官方文档详见:https://docs.astral.sh/

Java对异常的认识与异常的处理小结

《Java对异常的认识与异常的处理小结》Java程序在运行时可能出现的错误或非正常情况称为异常,下面给大家介绍Java对异常的认识与异常的处理,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参... 目录一、认识异常与异常类型。二、异常的处理三、总结 一、认识异常与异常类型。(1)简单定义-什么是

Nexus安装和启动的实现教程

《Nexus安装和启动的实现教程》:本文主要介绍Nexus安装和启动的实现教程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、Nexus下载二、Nexus安装和启动三、关闭Nexus总结一、Nexus下载官方下载链接:DownloadWindows系统根

华为鸿蒙HarmonyOS 5.1官宣7月开启升级! 首批支持名单公布

《华为鸿蒙HarmonyOS5.1官宣7月开启升级!首批支持名单公布》在刚刚结束的华为Pura80系列及全场景新品发布会上,除了众多新品的发布,还有一个消息也点燃了所有鸿蒙用户的期待,那就是Ha... 在今日的华为 Pura 80 系列及全场景新品发布会上,华为宣布鸿蒙 HarmonyOS 5.1 将于 7

Python主动抛出异常的各种用法和场景分析

《Python主动抛出异常的各种用法和场景分析》在Python中,我们不仅可以捕获和处理异常,还可以主动抛出异常,也就是以类的方式自定义错误的类型和提示信息,这在编程中非常有用,下面我将详细解释主动抛... 目录一、为什么要主动抛出异常?二、基本语法:raise关键字基本示例三、raise的多种用法1. 抛

Java SWT库详解与安装指南(最新推荐)

《JavaSWT库详解与安装指南(最新推荐)》:本文主要介绍JavaSWT库详解与安装指南,在本章中,我们介绍了如何下载、安装SWTJAR包,并详述了在Eclipse以及命令行环境中配置Java... 目录1. Java SWT类库概述2. SWT与AWT和Swing的区别2.1 历史背景与设计理念2.1.

统一返回JsonResult踩坑的记录

《统一返回JsonResult踩坑的记录》:本文主要介绍统一返回JsonResult踩坑的记录,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录统一返回jsonResult踩坑定义了一个统一返回类在使用时,JsonResult没有get/set方法时响应总结统一返回

MyBatis设计SQL返回布尔值(Boolean)的常见方法

《MyBatis设计SQL返回布尔值(Boolean)的常见方法》这篇文章主要为大家详细介绍了MyBatis设计SQL返回布尔值(Boolean)的几种常见方法,文中的示例代码讲解详细,感兴趣的小伙伴... 目录方案一:使用COUNT查询存在性(推荐)方案二:条件表达式直接返回布尔方案三:存在性检查(EXI

安装centos8设置基础软件仓库时出错的解决方案

《安装centos8设置基础软件仓库时出错的解决方案》:本文主要介绍安装centos8设置基础软件仓库时出错的解决方案,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐... 目录安装Centos8设置基础软件仓库时出错版本 8版本 8.2.200android4版本 javas

Java空指针异常NullPointerException的原因与解决方案

《Java空指针异常NullPointerException的原因与解决方案》在Java开发中,NullPointerException(空指针异常)是最常见的运行时异常之一,通常发生在程序尝试访问或... 目录一、空指针异常产生的原因1. 变量未初始化2. 对象引用被显式置为null3. 方法返回null