02-Centos7安装部署Mirrorgate
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的更多相关文章
- CentOS7安装部署zabbix3.4操作记录
		
CentOS7安装部署zabbix3.4操作记录 1.安装前准备 1.1 查看centos的系统版本 [root@zabbix ~]# cat /etc/redhat-release CentOS L ...
 - centos7 安装部署运行 Redis5
		
原文:centos7 安装部署运行 Redis5 Redis5 下载与解压(官网: https://redis.io/download ) 下载命令:wget http://download.redi ...
 - 容器centos7安装部署ansible
		
容器centos7安装部署ansible centos镜像版本及ansible版本 centos:centos7.5.1804 ansible:2.9.11 启动容器并进入容器 docker run ...
 - Centos7安装部署搭建gitlab平台、汉化
		
Centos7安装部署搭建gitlab平台.汉化 安装环境要求:内存不要小于4G,否则后期web界面可能会报错 一.准备工作 1.1 查看系统版本 首先查询系统版本,下载Gitlab的对应版本 [ro ...
 - centos7安装部署opentsdb2.4.0
		
写在前面 安装HBase 在HBase中创建表结构 安装配置并启动opentsdb 写在前面 最近因为项目需要在读opentsdb的一部分源码,后面会做个小结分享出来.本人是不大喜欢写这种安装部署的文 ...
 - centos7 安装部署 Jenkins
		
Jenkins 安装部署 1. 安装资源下载 Jenkin镜像地址: http://mirrors.jenkins-ci.org/status.html 选择清华大学镜像地址下载rpm https:/ ...
 - centos7安装部署SVN
		
SVN介绍 SVN是个自由.开源的版本控制系统,绝大多数开源软件都使用SVN作为代码版本管理软件. SVN的官方网站http://subversion.apache.org/.目前SVN在开源社区 ...
 - Centos7 安装部署Kubernetes(k8s)集群
		
目录 一.系统环境 二.前言 三.Kubernetes 3.1 概述 3.2 Kubernetes 组件 3.2.1 控制平面组件 3.2.2 Node组件 四.安装部署Kubernetes集群 4. ...
 - Centos7 安装部署 Airflow
		
本人在centos7 的环境下部署,怎么在centos7 下配置静态 IP 关闭防火墙 以及安装jdk在这里不多赘述, centos7 配置静态ip可以参考:https://www.cnblogs.c ...
 - centos6.5/centos7安装部署企业内部知识管理社区系统wecenter
		
企业内部知识系统wecenter社区系统安装及部署 centos 6.5环境安装 因为是公司内部使用在线人数不会太多,使用yum安装lamp环境即可 1.安装lamp基本环境 yum -y insta ...
 
随机推荐
- 【读书笔记】iOS-访问iPod媒体库
			
iOS设备内部都有一个iPod媒体库,在这个媒体库中包含了音频和视频文件,它的来源主要是苹果公司的iTunes Store,现在苹果公司的iTunes Store内容很多,但能够下载到iPod媒体库的 ...
 - mysql 之库, 表的简易操作
			
一. 库的操作 1.创建数据库 创建数据库: create database 库名 charset utf8; charset uft8 可选项 1.2 数据库命名规范: 可以由字母.数字.下划 ...
 - float清除浮动
			
清除浮动: 在非IE浏览器下,当容器的高度为auto,且容器的内容中有浮动(float为left或right)的元素,在这种情况下,容器的高度不能自动伸长以适应内容的高度,使得内容溢出到容器外面而影响 ...
 - 一些关于Viewport与device-width的东西~(转)
			
内容转自 http://www.cnblogs.com/koukouyifan/p/4066567.html 非常感谢 口口一凡 为我们提供的这篇文章,受益匪浅,特地转到自己的博客收藏起来. 以下是原 ...
 - vue.js及项目实战[笔记]— 02 vue.js基础
			
一. 基础 1. 注册全局组件 应用场景:多出使用的公共性能组件,就可以注册成全局组件,减少冗余代码 全局APIVue.component('组件名','组件对象') 2.附加功能:过滤器&监 ...
 - loadrunner 场景设计-添加Windows Resources计数器
			
场景设计-添加Windows Resources计数器 by:授客 QQ:1033553122 目的 监控要测试的windows服务器的资源使用情况 步骤 1.添加视图,方法双击.拖动左侧的Windo ...
 - Related concepts of testing
			
根据是否知道源代码测试可以分为黑盒和白盒. 黑盒:功能测试. 白盒:知道源代码,要写测试代码. 根据测试的粒度. 方法测试: 单元测试: 集成测试: 系统测试: 根据测试的暴力程度. 压力测试:谷歌工 ...
 - 为Hexo Next主题添加分享及打赏功能
			
博客地址:往事亦如风的博客 要想先看打赏和分享功能效果,请移步我的博客 打赏功能 因为next主题自带打赏功能,所以我们只需要在next的主题配置文件中找到如下代码,image文件夹是我在blog/s ...
 - maven(一):是否有必要使用maven
			
以下是普通项目和maven项目 分别引入spring core模块的区别 1,假设我们有十个项目,都需要引入spring core模块,那么需要十份重复的Spring core.jar和commons ...
 - python第三十七天--异常--socket
			
异常处理 #!usr/bin/env python #-*-coding:utf-8-*- # Author calmyan list_l=['g','h'] data={'} try: #list_ ...