1.以Docker方式运行

MirrorGate服务器作为docker镜像提供,因此要运行它只需在终端中执行以下命令:

注意mongo镜像要使用3.6版本,其他版本会提示版本问题。

#Spinup mongo db
docker run --name mongo mongo > /dev/null & #Run mirrorgate without security
docker run --env "SPRING_DATA_MONGODB_URI=mongodb://mongo:27017/dashboard" --env "SPRING_PROFILES_ACTIVE=embedded" --link="mongo" -p8080: bbvaae/mirrorgate

访问mirrorgate服务器的控制台,创建一个新的仪表盘,设置“BuildJobs”字段为MirrorGateTest。点击eys图标保存到仪表盘中。

在打开保存仪表板的同时运行以下命令:

curl - -v http://localhost:8080/api/builds \
-H "Expect:" \
-H 'Content-Type: application/json; charset=utf-8' \
-d @- << EOF
{
"number" : "$(date +%s)",
"buildStatus" : "Failure",
"buildUrl": "#$(date +%s)",
"timestamp": $(date +%s),
"projectName" : "MirrorGateTest",
"repoName" : "MyRepo",
"branch" : "master"
}
EOF
您现在可以在打开的仪表板中看到构建状态。

2.组件

为了操作 ,Mirrorgate需要几个组件:

  主mirrorgate应用程序: 使用docker bbva-ae/mirrorgate容器执行。

MongoDB数据库: 应该使用SPRING_DATA_MONGODB_URI环境变量绑定到应用程序。

收集者:收集者是负责向应用程序收集和推送消息的组件。当前有以下组件

Jenkins插件:是一个从jenkinsCI服务器推送消息的插件。

JIRAcollector :是一个独立的应用程序。可以在每个可配置的时间内轮询jira服务器以进行更改。

3.对于开发人员

构建项目所需依赖:

  nodejs >= 6   jdk >= 7    docker   docker-compose

项目结构:

[root@node1 mirrorgate-0.3.0]# ll  | awk '{print $NF}'
60
CHANGELOG.md
CONTRIBUTING.md
docker # 包含工具来构建一个mirrorgate镜像
Jenkinsfile
LICENSE
mirrorgate-api #包含API后端源
mirrorgate-backoffice #包含仪表盘管理应用程序
mirrorgate-dashboard #包含前端源码
mirrorgate-docs
README.md
scripts
tests # 包含应用程序,将所有部分放在一起,并在开发时将他们作为一个整体执行

4.如何安装?

.确保已经安装了上面所说的依赖项
.克隆mirrorgate项目的源代码
.执行 sh scripts/buildAndRun.sh
.等待一段时间直到 tomcat启动 端口为8080
.打开浏览器访问 http://localhost:8080/mirrorgate/backoffice/ index.html

5.安装补充

运行buildAndRun.sh 其实就是执行 buildAll.sh  然后再tests目录运行run.sh完成。我在安装的期间出现了很多问题,所有建议安装的时候一步一步的安装,不要直接运行整个脚本,这样会很难排查问题。 脚本中pushed 是进入到某个目录  popd 是删除目录。以下是buildAll.sh的脚本内容。在执行脚本前,将npm源改成国内淘宝的,还有gradle 也需要改一下maven的仓库地址。 详见FAQ文档。

#!/usr/bin/env bash

set -e

CUR_DIR=$(pwd)
trap 'cd $CUR_DIR' EXIT
cd "$(dirname "$")"

#构建dashboard
pushd ../mirrorgate-dashboard
#
npm install --unsafe-perm=true --allow-root #添加后面这两个选项否则后面可能会出现权限问题
$(npm bin)/bower install --allow-root #必须添加--allow-root选项,不加以root运行后面必出权限问题
$(npm bin)/gulp dist
#
popd

#构建后台
pushd ../mirrorgate-backoffice
##
npm install --unsafe-perm=true --allow-root #同上
npm run build
##
popd
#
#pushd ../mirrorgate-docs
#
#npm install --unsafe-perm=true --allow-root && ./node_modules/.bin/bower install --allow-root #同上
#npm run build
#
#popd
# #构建 API
pushd ../mirrorgate-api
#
./gradlew clean build
#
popd

02-Centos7安装部署Mirrorgate的更多相关文章

  1. CentOS7安装部署zabbix3.4操作记录

    CentOS7安装部署zabbix3.4操作记录 1.安装前准备 1.1 查看centos的系统版本 [root@zabbix ~]# cat /etc/redhat-release CentOS L ...

  2. centos7 安装部署运行 Redis5

    原文:centos7 安装部署运行 Redis5 Redis5 下载与解压(官网: https://redis.io/download ) 下载命令:wget http://download.redi ...

  3. 容器centos7安装部署ansible

    容器centos7安装部署ansible centos镜像版本及ansible版本 centos:centos7.5.1804 ansible:2.9.11 启动容器并进入容器 docker run ...

  4. Centos7安装部署搭建gitlab平台、汉化

    Centos7安装部署搭建gitlab平台.汉化 安装环境要求:内存不要小于4G,否则后期web界面可能会报错 一.准备工作 1.1 查看系统版本 首先查询系统版本,下载Gitlab的对应版本 [ro ...

  5. centos7安装部署opentsdb2.4.0

    写在前面 安装HBase 在HBase中创建表结构 安装配置并启动opentsdb 写在前面 最近因为项目需要在读opentsdb的一部分源码,后面会做个小结分享出来.本人是不大喜欢写这种安装部署的文 ...

  6. centos7 安装部署 Jenkins

    Jenkins 安装部署 1. 安装资源下载 Jenkin镜像地址: http://mirrors.jenkins-ci.org/status.html 选择清华大学镜像地址下载rpm https:/ ...

  7. centos7安装部署SVN

      SVN介绍 SVN是个自由.开源的版本控制系统,绝大多数开源软件都使用SVN作为代码版本管理软件. SVN的官方网站http://subversion.apache.org/.目前SVN在开源社区 ...

  8. Centos7 安装部署Kubernetes(k8s)集群

    目录 一.系统环境 二.前言 三.Kubernetes 3.1 概述 3.2 Kubernetes 组件 3.2.1 控制平面组件 3.2.2 Node组件 四.安装部署Kubernetes集群 4. ...

  9. Centos7 安装部署 Airflow

    本人在centos7 的环境下部署,怎么在centos7 下配置静态 IP 关闭防火墙 以及安装jdk在这里不多赘述, centos7 配置静态ip可以参考:https://www.cnblogs.c ...

  10. centos6.5/centos7安装部署企业内部知识管理社区系统wecenter

    企业内部知识系统wecenter社区系统安装及部署 centos 6.5环境安装 因为是公司内部使用在线人数不会太多,使用yum安装lamp环境即可 1.安装lamp基本环境 yum -y insta ...

随机推荐

  1. 【读书笔记】iOS-访问iPod媒体库

    iOS设备内部都有一个iPod媒体库,在这个媒体库中包含了音频和视频文件,它的来源主要是苹果公司的iTunes Store,现在苹果公司的iTunes Store内容很多,但能够下载到iPod媒体库的 ...

  2. mysql 之库, 表的简易操作

    一. 库的操作 1.创建数据库 创建数据库: create database 库名 charset utf8;   charset uft8  可选项 1.2 数据库命名规范: 可以由字母.数字.下划 ...

  3. float清除浮动

    清除浮动: 在非IE浏览器下,当容器的高度为auto,且容器的内容中有浮动(float为left或right)的元素,在这种情况下,容器的高度不能自动伸长以适应内容的高度,使得内容溢出到容器外面而影响 ...

  4. 一些关于Viewport与device-width的东西~(转)

    内容转自 http://www.cnblogs.com/koukouyifan/p/4066567.html 非常感谢 口口一凡 为我们提供的这篇文章,受益匪浅,特地转到自己的博客收藏起来. 以下是原 ...

  5. vue.js及项目实战[笔记]— 02 vue.js基础

    一. 基础 1. 注册全局组件 应用场景:多出使用的公共性能组件,就可以注册成全局组件,减少冗余代码 全局APIVue.component('组件名','组件对象') 2.附加功能:过滤器&监 ...

  6. loadrunner 场景设计-添加Windows Resources计数器

    场景设计-添加Windows Resources计数器 by:授客 QQ:1033553122 目的 监控要测试的windows服务器的资源使用情况 步骤 1.添加视图,方法双击.拖动左侧的Windo ...

  7. Related concepts of testing

    根据是否知道源代码测试可以分为黑盒和白盒. 黑盒:功能测试. 白盒:知道源代码,要写测试代码. 根据测试的粒度. 方法测试: 单元测试: 集成测试: 系统测试: 根据测试的暴力程度. 压力测试:谷歌工 ...

  8. 为Hexo Next主题添加分享及打赏功能

    博客地址:往事亦如风的博客 要想先看打赏和分享功能效果,请移步我的博客 打赏功能 因为next主题自带打赏功能,所以我们只需要在next的主题配置文件中找到如下代码,image文件夹是我在blog/s ...

  9. maven(一):是否有必要使用maven

    以下是普通项目和maven项目 分别引入spring core模块的区别 1,假设我们有十个项目,都需要引入spring core模块,那么需要十份重复的Spring core.jar和commons ...

  10. python第三十七天--异常--socket

    异常处理 #!usr/bin/env python #-*-coding:utf-8-*- # Author calmyan list_l=['g','h'] data={'} try: #list_ ...