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 ...
随机推荐
- vue2.0 element-ui中el-upload的before-upload方法返回false时submit()不生效解决方法
我要实现的功能是在上传文件之前校验是否表格中存在重复的数据,有的话,需要弹窗提示是否覆盖,确认之后继续上传,取消之后,就不再上传. 项目中用的element-ui是V1.4.3 <el-uplo ...
- element-ui select组件中复选时以字符串形式显示
我使用的element-ui的版本是1.4.13. 如上图所示,使用el-select组件,要实现可搜索.可复选.可创建条目时,展示样式是如上图所示,输入框的高度会撑开,影响页面布局,按照产品的需求, ...
- 【读书笔记】iOS-流式音频与Pandora Radio之路
复杂性是不可避免的,而且只会随时间增长,所以在增加特性时一定要为重构和代码简化留出时间.真正遇到问题这前先不要担心性能.iPhone非常强壮,你可能永远也不会遇到预想的性能问题. 能过互联网向一个设备 ...
- 【读书笔记】iOS-设计简单的Frenzic式益智游戏
如果你决定用UIView动画或Core Animation,一定要编写一些测试用例,模拟游戏可能遇到的要求最高的动画,另外不要忘记播放声音.不要等到最后才增加声音,因为在iPhone上播放音乐和音效确 ...
- Html5画钟表盘/指针实时跳动
1.最终效果 时钟.分钟.秒指针连续移动2.完整代码 <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml&q ...
- (网页)Uncaught ReferenceError: pageImport is not defined
在js开发中,很多人遇到类似问题,都找不到解决方法.Uncaught ReferenceError: $ is not defined,在这里给大家提供几个解决方法. 1.出现这个错误,最可能的是引用 ...
- TensorFlow深度学习入门
# -*- coding: utf-8 -*- """ Created on Tue Oct 2 15:49:08 2018 @author: zhen "&q ...
- js中var的有或无--重复声明和以后的声明
js中var的有或无--重复声明和以后的声明 使用var语句多次声明一个变量不仅是合法的,而且也不会造成任何错误. 如果重复使用的一个声明有一个初始值,那么它担当的不过是一个赋值语句的角色. 如果重复 ...
- 监控.net 网站 Glimpse
使用Nuget 安装Glimpse 安装好后,config会默认添加几个节点 安装好之后 只需要浏览器输入 网站/Glimpse.axd 再次进入网站 就可以查看(ajax sql session ...
- linux 系统中用root切换到普通用户时显示的异常如-bash-4.1$
解决办法: 其实就是普通用户的家目录缺少配置文件导致: [root@xxx ~]# su - oldboy -bash-4.1$ 原因是普通用户的家目录下缺少文件: [root@xxx ~]# ls ...