注:本教程讲解将metabase项目源码自己编译构建为jar包的过程,使用linux centos7系统
如果要直接进行使用请直接进入官网下载,下载地址:点击此处,
找到网页中如下所示下载jar包后直接通过java -jar 命令启动,通过地址加3000端口号便可进行访问
也就是说如果只是要运行,只需要配置java环境即可,如果要进行编译,那么就需要看以下教程了
接下来主要讲解编译教程:
编译过程分为四步:
- metabase源码包下载
- 下载相关编译环境文件
- 对编译环境进行搭建
- 源码编译为jar包,进行访问
友情提示:可通过右边侧边栏中目录来查看文章整体结构
一,metabase源码包下载
源码包下载地址:点击此处
将zip格式的源码包下载下来
附上一张我下的源码已经编译运行后的版本信息:
二,下载编译相关环境文件
下载文件我都是在windows上进行下载的,然后将这些文件通过xshell上传到linux中,在linux中搭建编译环境
编译所需要的环境有:
- jdk8以上
- nodejs 8.x版本
- leiningen
1,下载jdk8
下载地址
由于是linux上进行编译,所以我们下载红线处的jdk
2,下载node.js
由于在自己的其它练习中遇到过nodejs版本太新而出现无法正常编译的情况,所以这次自己使用了8.16.2的版本,
当然如果你 想下载最新版本试试的话:
下载老版本
老版本下载地址
我们选择8.x版本的最新版,点击进去选择如下格式的进行下载因为点击后的页面总为这个大版本的最新版,所以我们直接选8.x的最新版即可,同一大版本应该影响不大
3,下载leiningen
leiningen地址
点击页面中红圈处,进入一个代码页面,将页面所有代码复制到一个空txt文件中,然后将后缀去掉,不要任何后缀
三,对编译环境进行搭建
首先利用xshell中的xftp将以上所有文件上传到linux中
1,安装jdk8
上传jdk
将下载好的JDK8上传到linux系统的/usr/java目录下,使用cd命令进入/usr/java目录,再使用tar -zxvf命令进行解压文件
cd /usr/java
tar -zxvf jdk-8u201-linux-x64.tar.gz
添加环境变量
用vim编辑器编辑profile,输入命令:vim /etc/ profile,再输入i进行编辑模式,在其中一行插入配置以下配置,然后esc键返回到命令行模式输入 :wq 保存并退出。
export JAVA_HOME=/usr/java/jdk1.8.0_201
export JRE_HOME=${JAVA_HOME}/jre
export JAVA_PATH=${JAVA_HOME}/bin:${JRE_HOME}/bin
export PATH=$PATH:${JAVA_PATH}
返回后在任意处输入java -version,如果出现对应版本号则配置成功
2,安装node.js
上传nodejs
将下载好的node-v8.16.2-linux-x64.tar.gz(这是我的下载版本)上传到linux系统的/opt/node目录下,使用cd命令进入/usr/bin目录,在使用tar -zxvf命令进行解压文件。
cd /opt/node
tar -zxvf node-v8.16.2-linux-x64.tar.gz
对nodejs进行安装
解压后执行以下命令,建立软连接以保证能在任何地方使用node命令,尽量使用绝对路径
ln -s /opt/node/node-v8.16.2-linux-x64/bin/npm /usr/local/bin/
ln -s /opt/node/node-v8.16.2-linux-x64/bin/node /usr/local/bin/
然后使用node -v得到版本号及配置成功
3,安装yarn
yarn是类似于npm的包管理器
在/usr/bin目录下执行以下命令,在线安装。(Linux需要联网),此过程可能比较漫长,由于自己是在虚拟机上网络不稳定,所以中断了好几次才成功,要保持网络通畅
curl -o- -L https://yarnpkg.com/install.sh | bash
然后执行yarn -v即可看到版本号
4,安装leiningen
Leiningen用于自动化Clojure项目,因为metabase前端使用react,后台使用clojure脚本编程,clojure百科
将下载好的lein文件上传到linux的/usr/bin下,并在该文件夹下输入命令lein进行运行。此过程仍然联网,并要保持网络顺畅
如果出现权限不足,执行:
chmod +x /usr/bin/lein
四,源码编译为jar包,进行访问
1,编译
进入到我们解压后的源码文件夹中
编译前端代码,使用命令:
yarn run build
编译后端代码,使用命令:
lein ring server
前后端一起编译,使用命令:
yarn run build && lein ring server
然后进行构建命令(此过程也是相当滴漫长):
./bin/build
构建成功后进入target目录的uberjar文件夹中
metabase.jar就是打包后的项目了
将此jar包运行
java -jar metabase.jar
下图状态便是运行成功:
如果想要运行的同时要对linux进行其他操作,请参考我这篇文章:linux jar包后台运行
2,访问
输入ip+:3000(端口号)即可访问,下边是我注册后的局部页面
3,metabase使用教程
下边是我的另一篇文章:metabase使用教程