smartKettle离线部署及问题记录

目录

  • 📚第一章 前言
    • 📗背景
    • 📗目的
    • 📗总体方向
  • 📚第二章 部署
    • 📗源码下载
    • 📗后端部署
      • 📕导入后端项目
      • 📕修改settings.xml(自动下载相关jar包)
      • 📕 编译
      • 📕 修改配置文件application.yml
      • 📕 初始化数据库
      • 📕 打包上传启动
      • 📕 可以正常访问接口界面,即服务启动成功
    • 📗前端部署
      • 📕基础环境按照
      • 📕编译
      • 📕本地启动
      • 📕服务器部署验证
        • 📘 nginx配置
        • 📘 登录
  • ⁉️问题记录
    • ❓问题一: jar包下载不下来
      • ❗解决方式一:正常不会有问题,建议直接使用项目中提供的settings.xml替换,修改地址即可
      • ❕解决方式二:手动下载,费劲呢!!!!
        • 📘修改jar包名称
        • 📘逐一上传到本地仓库
      • ❗解决方式三:已打包上传CSDN,免费下载
      • ❕解决方式二:
    • ❓问题二:启动报错(系统默认mysql5,使用8时忘了更新驱动包)
      • ❗解决方式:替换msyql8驱动
        • 先本地验证

📚第一章 前言

📗背景

昨天下载了Kettle9.2的源码,简单了解了下代码结构,今天来看下smartKettle,它相当于之前部署的pentaho-server-ce-9.4.0.0-343,是一款超轻量级的kettle web端调度监控平台,详见官网
在这里插入图片描述

📗目的

我的最终目的和smartKettle的终极目标是一致的,实现Web端的Kettle任务流程编排,今天部署smartKettle也是寻求一些启发点
在这里插入图片描述

📗总体方向

干就完了

📚第二章 部署

📗源码下载

下载地址:https://gitee.com/hundage/smartkettle.git
在这里插入图片描述

📗后端部署

📕导入后端项目

在这里插入图片描述

📕修改settings.xml(自动下载相关jar包)

在这里插入图片描述
settings.xml内容如下(别忘了修改本地仓库存放路径):

<?xml version="1.0" encoding="UTF-8"?>
<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd"><localRepository>D:\soft\apache-maven-3.8.5\apache-maven-3.8.5\repository</localRepository><servers><server><id>rdc-releases</id><username>Y3z0VZ</username><password>Bb8byTSlq0</password></server><server><id>rdc-snapshots</id><username>Y3z0VZ</username><password>Bb8byTSlq0</password></server></servers><mirrors><mirror><id>nexus-aliyun</id><mirrorOf>central</mirrorOf><name>nexus-aliyun</name><url>https://maven.aliyun.com/nexus/content/groups/public</url></mirror></mirrors><profiles><profile><id>first-repository</id><repositories><repository><id>rdc-snapshots</id><url>https://repo.rdc.aliyun.com/repository/128991-snapshot-NY2Ub0/</url><releases><enabled>true</enabled><updatePolicy>always</updatePolicy></releases><snapshots><enabled>true</enabled><updatePolicy>always</updatePolicy></snapshots></repository></repositories></profile><profile><id>second-repository</id><repositories><repository><id>rdc-releases</id><url>https://repo.rdc.aliyun.com/repository/128991-release-EJH8o1/</url><releases><enabled>true</enabled><updatePolicy>always</updatePolicy></releases><snapshots><enabled>true</enabled><updatePolicy>always</updatePolicy></snapshots></repository></repositories></profile><profile><id>third-repository</id><repositories><repository><id>central</id><url>https://maven.aliyun.com/nexus/content/groups/public</url><releases><enabled>true</enabled></releases><snapshots><enabled>true</enabled></snapshots></repository></repositories></profile><profile><id>forth-repository</id><repositories><repository><id>snapshots</id><url>https://maven.aliyun.com/repository/central</url><releases><enabled>true</enabled></releases><snapshots><enabled>true</enabled></snapshots></repository></repositories></profile><profile><id>fifth-repository</id><repositories><repository><id>pentaho-kettle</id><name>pentaho-kettle仓库</name><url>https://repo.orl.eng.hitachivantara.com/artifactory/pnt-mvn/</url></repository></repositories></profile></profiles><activeProfiles><activeProfile>first-repository</activeProfile><activeProfile>second-repository</activeProfile><activeProfile>third-repository</activeProfile><activeProfile>forth-repository</activeProfile><activeProfile>fifth-repository</activeProfile></activeProfiles>
</settings>

📕 编译

想放弃了,什么玩意…
在这里插入图片描述
全量导入项目,不要只导入后端程序
在这里插入图片描述
在这里插入图片描述

📕 修改配置文件application.yml

主要配置数据库信息和日志路径(如果不想修改文件,可以配置环境变量,对应配置文件中XTL_XXXX,不管那种方式都要麻烦一遍的
在这里插入图片描述
JDBC连接参考如下(注意serverTimezoneallowPublicKeyRetrieval,这里使用的mysql8,若是5请忽略):

jdbc:mysql://xxx:3306/xtl_db?useUniCode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull&useSSL=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true&

📕 初始化数据库

在这里插入图片描述
在这里插入图片描述

📕 打包上传启动

在这里插入图片描述

指定后台运行服务:nohup java -jar smart-kettle-1.0.0-SNAPSHOT.jar /dev/null 2>&1 &

📕 可以正常访问接口界面,即服务启动成功

Swagger地址:http://xxxx:9753/xtl-server/swagger-ui.html
在这里插入图片描述

📗前端部署

📕基础环境按照

之前安装过,就不赘述了,就是下载一个nodejs,配置下环境变量,可参照Vue项目创建(2.x/3.x 自动/手动)及问题记录

📕编译

  • 这里使用的VSCode软件,导入前端项目,执行npm install
    在这里插入图片描述
  • 打包:npm run build
    在这里插入图片描述
    在这里插入图片描述

📕本地启动

  • 配置服务器地址
    在这里插入图片描述
  • 执行启动:npm run dev
    在这里插入图片描述
  • 成功登录
    在这里插入图片描述
    在这里插入图片描述

📕服务器部署验证

  • 编译好的文件在dist目录,直接压缩,上传到服务器,通过Nginx部署
    在这里插入图片描述
📘 nginx配置

nginx安装可参照安装nginx两种方式及遇到问题
在这里插入图片描述

server {listen       8642;server_name  localhost;location / {root /home/opensource/app/smartketlle/ui/dist;try_files $uri $uri/ /index.html;index  index.html index.htm;}location /kettle-admin {alias /home/opensource/app/smartketlle/ui/dist;index  index.html index.htm;try_files $uri $uri/ /kettle-admin/index.html;     #4.重定向,内部文件的指向}location /xtl-server/ {proxy_pass http://localhost:9753/xtl-server/;proxy_set_header Host $host:$server_port;proxy_set_header X-Real-IP $remote_addr;proxy_set_header REMOTE-HOST $remote_addr;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;}error_page   500 502 503 504  /50x.html;location = /50x.html {root   html;}
}
📘 登录

在这里插入图片描述
在这里插入图片描述

⁉️问题记录

❓问题一: jar包下载不下来

在这里插入图片描述
在这里插入图片描述

❗解决方式一:正常不会有问题,建议直接使用项目中提供的settings.xml替换,修改地址即可

在这里插入图片描述

❕解决方式二:手动下载,费劲呢!!!!

官方文档有说明,下载不下来情况下如何处理
在这里插入图片描述
在这里插入图片描述

📘修改jar包名称

在这里插入图片描述

📘逐一上传到本地仓库
mvn install:install-file -Dfile=D:/code/opensource/smartkettle/x-smart-kettle-server/external/x-kettle-core-1.0.0-SNAPSHOT.jar -DgroupId=org.yaukie.xtl -DartifactId=x-kettle-core  -Dversion=1.0.0-SNAPSHOT -Dpackaging=jar 
mvn install:install-file -Dfile=D:/code/opensource/smartkettle/x-smart-kettle-server/external/x-common-base-1.0.0-SNAPSHOT.jar -DgroupId=org.yaukie.core -DartifactId=x-common-base  -Dversion=1.0.0-SNAPSHOT -Dpackaging=jar
mvn install:install-file -Dfile=D:/code/opensource/smartkettle/x-smart-kettle-server/external/x-common-auth-1.0.0-SNAPSHOT.jar -DgroupId=org.yaukie.core -DartifactId=x-common-auth  -Dversion=1.0.0-SNAPSHOT -Dpackaging=jar
mvn install:install-file -Dfile=D:/code/opensource/smartkettle/x-smart-kettle-server/external/x1-simple-job-1.0.0-SNAPSHOT.jar -DgroupId=org.yaukie.frame -DartifactId=x1-simple-job  -Dversion=1.0.0-SNAPSHOT -Dpackaging=jar 

在这里插入图片描述
在这里插入图片描述

❗解决方式三:已打包上传CSDN,免费下载

在这里插入图片描述

下载地址
在这里插入图片描述

❕解决方式二:

❓问题二:启动报错(系统默认mysql5,使用8时忘了更新驱动包)

在这里插入图片描述

❗解决方式:替换msyql8驱动

在这里插入图片描述

<!-- 定义 mysql 版本 --><dependency><groupId>org.yaukie.core</groupId><artifactId>x-common-base</artifactId><version>1.0.0-SNAPSHOT</version><exclusions><exclusion><!--排查掉自带的msyql5 --><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId></exclusion></exclusions></dependency><!--重新指定mysql8驱动 --><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><version>8.0.25</version></dependency>
先本地验证

在这里插入图片描述

java.sql.SQLNonTransientConnectionException: Public Key Retrieval is not allowedat com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:110)at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:122)at com.mysql.cj.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:833)at com.mysql.cj.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:453)at com.mysql.cj.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:246)

修改配置allowPublicKeyRetrieval=true,再次启动
在这里插入图片描述

启动成功;http://localhost:9753/xtl-server/swagger-ui.html
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/218715.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

python+selenium截图方法

1.截图网页全部 截全屏的&#xff0c;用到的内置方法为save_screenshot(“test.png”) from selenium import webdriver from time import sleepclass test:driver webdriver.Chrome()driver.maximize_window()driver.get(https://www.baidu.com/)sleep(2)# 截取全屏driver.…

数据结构:双链表

由于双链表中大部分操作其实和单链表操作类似&#xff0c;所以这里只挑关键的一些函数 1、定义与初始化 typedef struct DNode {ElementType data;struct DNode *prior,*next; }DNode,*DLinkList;bool InitialDLinkList(DLinkList &L){L (DNode *)malloc(sizeof(DNode));…

不与最大数相同的数字之和

题目描述 输出一个整数数列中不与最大数相同的数字之和。 输入格式 输入分为两行&#xff1a; 第一行为 (N 为接下来数的个数&#xff0c;N≤100)&#xff1b; 第二行为 N 个整数&#xff0c;数与数之间以一个空格分开&#xff0c;每个整数的范围是 −1000,000 到 1000,00…

高精度电压源的作用是什么

高精度电压源是一种用于提供稳定和精确电压输出的电子设备。它们在实验室研究、工业生产和医疗器械等各种应用中发挥着重要作用。下面西安安泰来为大家详细介绍高精度电压源的作用和用途等内容。 一、高精度电压源的作用 提供准确的电压值&#xff1a;高精度电压源可以提供非常…

直流电、交流电、电磁波、光之间的联系

直流电、恒定磁场、交流电、交变磁场、电磁波、光之间的联系 频率为0Hz的直流电及恒定磁场 从频率的角度上看&#xff0c;直流电与恒定磁场的方向不变&#xff0c;频率为0Hz. 如可充电锂离子电池的电压3.7V, 干电池的电压1.5V. 磁铁的磁场方向从N极到S极&#xff0c;始终保持…

Failed to connect to huggingface.co

在国内huggingface.co被墙了。可以使用Huggingface 镜像站https://hf-mirror.com/来解决这个问题。 解决方法&#xff1a; # vim ~/.bashrc export HF_ENDPOINThttps://hf-mirror.com然后再source ~/.bashrc 当访问 huggingface.co 时&#xff0c;将会直接替换为本站域名hf-m…

[Django-05 ]自定义sql查询

自定义sql查询 settings.py 设置数据库自定义sql查询 settings.py 设置数据库 DATABASES {# default: {# ENGINE: django.db.backends.sqlite3,# NAME: BASE_DIR / db.sqlite3,# }default: {ENGINE: django.db.backends.mysql, # 数据库引擎NAME: study, # 数据库名…

mac切换node版本

Mac 上切换 node 版本总结 背景 在做项目的时候&#xff0c;往往会遇到老项目没有升级的问题&#xff0c;node环境版本比较低&#xff0c;自己电脑安装或者新项目安装了最新版本的 node 环境&#xff0c;那么既要支持老版本的使用也要支持新版本那么怎么办呢&#xff1f; Mac 提…

AnimateAnything:Fine-grained open domain image animation with motion guidance

1.Introduction 本文旨在借助视频扩散模型的motion prior来解决开放领域图像动画问题&#xff0c;提出了一种可控扩散图像动画方法&#xff0c;能够在保留细节的同时对图像中的任意对象进行动画处理。为了增强用户对动画过程的控制能力&#xff0c;引入了motion area guidance和…

vue3 添加编辑页使用 cron 表达式生成

示例效果图 1、添加组件 <template><div class"v3c"><ul class"v3c-tab"><li class"v3c-tab-item" :class"{ v3c-active: tabActive 1 }" click"onHandleTab(1)">秒</li><li class&qu…

小航助学2023年9月电子学会Scratch三级真题(含题库答题软件账号)

需要在线模拟训练的题库账号请点击 小航助学编程在线模拟试卷系统&#xff08;含题库答题软件账号&#xff09; 单选题2.00分 删除编辑附件图文 答案:C 第1题运行下面程序后&#xff0c;角色的x坐标值是&#xff1f;&#xff08; &#xff09; A、100B、90C、110D、120 答…

【前端学习记录】记一次分片上传逻辑的调试过程

前言 在项目开发的过程中&#xff0c;经常会遇到上传和下载&#xff0c;对于上传来说&#xff0c;如果是小文件的话&#xff0c;接口响应会比较快&#xff0c;但是对于大文件&#xff0c;则需要对其分片以减少请求体的大小和上传时间。 小文件上传 以Vue框架使用<el-uplo…

官宣 鸿雁成为2023汇丰世界羽联世界巡回赛总决赛官方供应商

全屋智能和羽毛球运动能擦出怎样的火花&#xff1f; 鸿雁给你答案&#xff01; 12月13日&#xff0c;2023汇丰世界羽联世界巡回赛总决赛将在杭州举行。 鸿雁签约成为2023汇丰世界羽联世界巡回赛总决赛官方供应商&#xff0c;将携手世界羽联&#xff0c;为广大羽毛球爱好者们…

Yolov5双目测距-双目相机计数及测距教程(附代码)

引言 在计算机视觉领域&#xff0c;Yolov5-Binocular相机距离计数及测距是一个引人注目的研究方向。本教程将为小白用户提供一个简明扼要的学习指南&#xff0c;涵盖了关键步骤&#xff0c;包括标定、公示推倒以及重要的代码片段。 第一步&#xff1a;环境搭建 首先&#x…

【Geoserver】将geoserver迁移到jetty的发行包中

之前讲了在Geosever的二进制发行包中升级jetty的内容&#xff0c;我测试之后发现有些问题&#xff0c;本地运行可能没有问题&#xff0c;但是在linux上运行报错了。 于是我想着换个思路好了&#xff0c;总是想着将Geosever中的jetty包替换掉&#xff0c;干脆反过来&#xff0c;…

2023_Spark_实验二十六:编写Shell模拟生成点击实时数据

引言&#xff1a;流式数据处理主要处理实时数据&#xff0c;由于实验教学过程中&#xff0c;每个同学无法拿到实时数据&#xff0c;因此我们开发shell脚本模拟实时数据生成&#xff0c;支持后续实验。 实验目的&#xff1a;通过开发模拟实时点击流shell脚本&#xff0c;模拟实时…

【Database】什么是数据库?常见的数据库类型有哪些?

什么是数据库&#xff1f;常见的数据库类型有哪些&#xff1f; 首先&#xff0c;什么是数据库&#xff1f;把它想象成一个数字游乐场&#xff0c;我们以结构化的方式组织和存储大量信息。现在&#xff0c;让我们来谈谈数据库的主要类型。 关系型数据库&#xff1a; 想象一下…

深度学习的目标检测算法综述

信息记录材料 2022年10月 第23卷第10期 【摘要】目标检测是深度学习的一个重要应用&#xff0c;目前在智能驾驶、工业检测相关领域都获得应用&#xff0c;具有重要的现实意义。本文对基于深度学习目标检测算法原理和应用情况进行简述&#xff0c;首先介绍结合区域提取和卷积神经…

Spring上IOC之@EnableAspectJAutoProxy

博主介绍&#xff1a;✌全网粉丝5W&#xff0c;全栈开发工程师&#xff0c;从事多年软件开发&#xff0c;在大厂呆过。持有软件中级、六级等证书。可提供微服务项目搭建与毕业项目实战&#xff0c;博主也曾写过优秀论文&#xff0c;查重率极低&#xff0c;在这方面有丰富的经验…

3分钟,掌握“曲面屏显示屏”

在3分钟内掌握“曲面屏显示屏”的概念和特点&#xff0c;可以按照以下步骤进行&#xff1a; 一、了解曲面屏显示屏的基本概念 曲面屏显示屏是一种采用柔性塑料的显示屏&#xff0c;主要通过OLED面板来实现。相比直面屏幕&#xff0c;曲面屏幕弹性更好&#xff0c;不易破碎。此外…