关于skywalking源码编译遇到的一些坑

简介

使用的版本为9.2.0,就编译过程中遇到的坑做简单记录。

编译环境

电脑:macos high sierra 10.13.6
docker版本:20.10.13
docker-compose版本:1.28.5
maven:3.6.1

坑点

问题一 编译命令执行后缺少proto文件;
原因:缺少proto的子模块代码,或者子模块代码拉取不全;
解决方案:再拉取项目代码的时间使用翻墙代理;
问题二 编译命令执行后,receiver-proto模块一直编译不起并报错;
报错现象:大概的意思就是执行 “exec  target/bin/flatc”报错,系统执行不了这个命令,这个现象在windwos电脑正常,但在我mac电脑却是失败的。
原因:macos high sierra 10.13.6这个系统版本太低,无法执行这个命令,需要将系统升级到10.14.+的版本;
解决方案:1.升级系统;2.换windwos电脑(我选择的);
问题三 将项目打包成docker镜像;
现象:官方提供的DockerFile文件是需要传参数的,但说明里面并没有提示,导致再构建的时候很懵圈;一直打包不了;
原因:运行DockerFile时需要增加参数,并且参数得指向正确的文件路径;
解决方案:
打镜像命令需要增加亮哥参数 --build-arg DIST=包名 			--build-arg SKYWALKING_CLI_VERSION=latest;	
	其中,DIST的值为apache-skywalking-apm-bin.tar.gz 包的绝对路径(建议放在同目录下,直接写包名);
	SKYWALKING_CLI_VERSION的值为cli的版本(现在固定为latest最新版本就行)
	
**最终打包命令为**:docker build -t skywalking-oap:9.2.0 --build-arg DIST=apache-skywalking-apm-bin.tar.gz --build-arg SKYWALKING_CLI_VERSION=latest  .
问题四 打包好的docker镜像无法运行,报版本问题;
Version in "./docker-compose.yaml" is unsupported. You might be seeing this xxxxxx
原因:docker版本和docker-compose.yaml定义的version不匹配,导致报错;

解决方案:升级docker版本;
问题五 打包好的docker镜像一运行就停止了;

错误现象:
在这里插入图片描述

原因:9.2.0版本的skywalking对docker的版本、docker-compose的版本是有要求的(具体什么要求没研究),我自己的电脑上的docker版本满足使用,但服务器上面的版本太低,导致一启动就停止;

解决方案:将docker的版本、docker-compose的版本升级到当前最新版本即可(因为9.2.0版本是当时skywalking的最新版本,要求docker-compose使用3.8的version);

跳过测试:./mvnw clean package -Pall -Dcheckstyle.skip=true -Dmaven.test.skip=true

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值