IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 开发工具 -> 源码构建Eclipse Kapua及粗略说明 -> 正文阅读

[开发工具]源码构建Eclipse Kapua及粗略说明

上一篇提到使用maven来构建项目,我们使用的是eclipse kapua release1.4.x版本

如果直接用maven构建源码,我们用develop版本是可以实现的

1. 对子项目构建打包(jar、pom、war)

为了执行kapua的完整构建,需要先对maven进行build操作

 $ sudo mvn clean install -Pdocker,dev,console -DskipTests 

build操作主要是为了打包kapua的各个模块,因为各个子模块之间存在相互引用的关系

在构建时,会报找不到com.extjs.gxt-2.2.5.jar,已在拉取好的docker镜像中找到该文件,也可以直接下载:gxt-2.2.5.jar 密码:fz2n

将文件放在/root/.m2/repository/com/extjs/gxt/2.2.5/

除此之外,同样的还会报找不到com.extjs.gxt-ui-2.2.5.jar的错误,报错地址在console/web/pom.xml文件中,我们定位gxt-ui的位置,把-ui删掉,查找整个项目,没找到有用到gxt-uijar包的地方,所以此处改为gxt-2.2.5.jar应该是没错的。(刚接触这个项目,有误的话还请指出)

<plugin>
	<groupId>org.apache.maven.plugins</groupId>
	<artifactId>maven-dependency-plugin</artifactId>
	<executions>
		<execution>
			<id>Create gxt resources</id>
			<phase>prepare-package</phase>
			<goals>
				<goal>unpack</goal>
			</goals>
			<configuration>
				<artifactItems>
					<artifactItem>
						<groupId>com.extjs</groupId>
						<artifactId>gxt-ui</artifactId>
						<version>${com.extjs.gxt.version}</version>
						<overWrite>true</overWrite>
						<outputDirectory>${site.basedir}</outputDirectory>
					</artifactItem>
				</artifactItems>
			</configuration>
		</execution>

改了这两处之后,项目子模块们即可打包成功。

2. 构建镜像(docker)

打包成功后,使用assembly命令对项目进行打包,包括一些镜像的构建:

$ mvn -f assembly -Pconsole,docker

我对所打包的模块做了写简单总结

assembly模块主要包含的项目模块
kapua-assembly-sql打包成kapua-sql镜像 主要内容:拉取h2databasejar包,并运行
kapua-assembly-java-base运行jre-openjdk环境
kapua-assembly-jetty-base打包成jetty-base镜像 包括主要的maven依赖
kapua-assembly-broker打包成kapua-docker镜像 包括kapua的主要功能模块:device,security,user,service,message,job-engine等大部分子模块
kapua-assembly-event-broker打包成kapua-events-broker镜像 接受各种协议:包括artemis,amqp,stomp,hornetq,mqtt 主要内容:配置用户名密码协议,通过jolokia运行协议服务通过http访问
kapua-assembly-console打包成kapua-console镜像,从jetty-base构建 包括kapua-console-web:war包
kapua-assembly-api打包成kapua-api镜像,从jetty-base构建 包括kapua-rest-api-web:war包

打包完成后,运行docker images命令

在这里插入图片描述

接着,通过源码打包的镜像运行eclipse Kapua平台,与之前docker部署构建平台的步骤相同,不同的是,我们之前使用的镜像是从网上拉取的,而现在使用的镜像是源码构建到本地的。

直接运行./kapua/deployment/docker/unix/docker-deploy.sh即可运行已打包好的镜像

[zhuqiandann@localhost kapua]# ./deployment/docker/unix/docker-deploy.sh 
Deploying Eclipse Kapua...
Pulling es (docker.elastic.co/elasticsearch/elasticsearch:7.8.1)...
Trying to pull repository docker.elastic.co/elasticsearch/elasticsearch ... 
7.8.1: Pulling from docker.elastic.co/elasticsearch/elasticsearch
Digest: sha256:54b6af874560621c7791a0845359f2013b42592b18f38857b22fd18246f8afd1
Status: Downloaded newer image for docker.elastic.co/elasticsearch/elasticsearch:7.8.1
Creating compose_db_1            ... done
Creating compose_es_1            ... done
Creating compose_events-broker_1 ... done
Creating compose_broker_1        ... done
Creating compose_kapua-console_1 ... done
Creating compose_kapua-api_1     ... done
Creating compose_job-engine_1    ... done
Deploying Eclipse Kapua... DONE!
Run "docker-compose -f /root/kapua/deployment/docker/unix/../compose/docker-compose.yml logs -f" for container logs

3.端口问题

如果遇到端口问题,可以通过docker-compose.yml文件修改主机映射端口

$ vi kapua/deployment/docker/compose/docker-compose.yml 

示例

services:
  db:
    image: kapua/kapua-sql:${IMAGE_VERSION}
    ports:
      - 8181:8181   # - 32181:8181 将8181端口映射到32181端口上,外部通过ip:32181访问服务
      - 3306:3306

修改ports部分,左侧端口表示在主机中的映射端口,右侧端口表示docker镜像内部端口,面对端口冲突时,我们只需要修改左侧端口即可,确保主机中端口不冲突。

4.平台简单介绍

服务主机端口用户密码其他
H2 SQL3306/8181web访问kapuakapua架构名称:kapuadb
ElasticSearch9200
Broker1883kapua-brokerkapua-password
Admin Web Console8080kapua-syskapua-password
REST API endpoint8181kapua-syskapua-passwordAPI KEY:12345678kapua-password

4.1数据库访问

使用h2数据库引擎,可以通过localhost:8181端口访问数据库,用户名:kapua;密码:kapua

在这里插入图片描述

如果使用默认的JDBC URL会报IO Exception: "/var/opt/h2/test outside /var/opt/h2/data" [90028-193] 90028/90028 (Help)错误

这是由h2的版本问题导致的,将jdbc:h2:~/test改为jdbc:h2:~./test即可登入访问

4.2 Kapua console控制台访问

可以通过localhost:8080端口访问web console界面,输入用户名:kapua-sys 密码:kapua-password即可访问,目前最新发布的(1.6.0-SNAPSHOT)版本界面布局有些问题,导致左侧导航栏“消失不见”的情况,还在看源码找原因。贴一张对比图,上图表示了1.4.2kapua-console版本的正常模样,下图是目前用源码构建的。

1.4.2版本kapua-console
当前1.6.0-SNAPSHOT版本kapua console

4.3 API服务

可以通过localhost:8081端口访问项目的api,通过swagger-ui生成的,接口信息还没有看,这里不作说明。

  开发工具 最新文章
Postman接口测试之Mock快速入门
ASCII码空格替换查表_最全ASCII码对照表0-2
如何使用 ssh 建立 socks 代理
Typora配合PicGo阿里云图床配置
SoapUI、Jmeter、Postman三种接口测试工具的
github用相对路径显示图片_GitHub 中 readm
Windows编译g2o及其g2o viewer
解决jupyter notebook无法连接/ jupyter连接
Git恢复到之前版本
VScode常用快捷键
上一篇文章      下一篇文章      查看所有文章
加:2021-07-09 17:38:00  更:2021-07-09 17:39:06 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年12日历 -2024/12/22 13:17:25-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码