1 产品介绍

  Black Duck 是最早进行开源代码检测工具开发的公司,其产品包括Protex 和HUB,Protex 强调检测的精度和准确性,而HUB 强调检测的速度和易用性。

1.1 Protex

  Protex平台是黑鸭子套件的重要组件,为用户提供细粒度(代码片段级别)和高精度的开源代码检测能力,它基于黑鸭子知识库(Knowledge Base,KB)进行工作,支持本地化部署使用。

1.2 HUB

  HUB 是Black Duck 的一款简单易用的开源代码检测工具,为用户提供一种粗粒度(开源组件级别)的开源代码检测能力,但其速度更快,使用简便,对于代码检测精度需求不高的用户较为适合,而且HUB 除了可以检测开源合规性之外,还能够发现用户使用的开源软件存在的漏洞。HUB 依托于Black Duck 的开源知识库和第三方漏洞库(NVD),能够快速的检测出用户代码库中包含的开源软件。HUB 的部署方式为云端部署,开源知识库部署于云端,由Black Duck 公司的专业团队维护,用户测只需安装HUB 的扫描服务器,用户本地的扫描服务器将用户代码的特征值(Hash 值)上传到云端的服务器,云端服务器否则将用户代码与开源代码进行比对,并将匹配结果传回用户测的扫描服务器进行分析和展示。HUB 相比Protex,提供更丰富的API ,便于与其它系统进行集成。

2 Docker安装Blackduck

2.1 为什么使用Docker?

  Docker体系结构为Black Duck 带来许多重大改进:

  • 简化安装和更新
  • 比类似的虚拟机  (VM)占用更少的空间
  • 适应客户环境
  • 提高性能

  Black Duck被部署为一组Docker容器,它们共同构成了应用程序。每个容器都扮演不同的角色。例如,Web应用程序容器处理UI请求,而Solr容器充当企业搜索平台组件。有关每个容器角色的详细说明,请参见Synopsys软件完整性社区上的《黑鸭Docker安装指南》。

2.2 安装环境要求

硬件(最低规格) 软件 首选操作系统
64位5核处理器 Docker 17.03.x或Docker 17.06.x(CE或EE) CentOS的7.3
20 GB的RAM 编排工具,例如Docker Swarm **,Docker Compose,Docker Run或Kubernetes。 Ubuntu 16.04.x
250 GB的可用空间用于数据库和其他集线器容器 有关受支持的编排技术的更多信息,请参阅《 Docker安装指南》。 Oracle企业Linux 7.3
可用空间用于数据库备份   红帽企业Linux服务器7.3
    SUSE Linux Enterprise Server 12.x
    支持Docker 17.03.x的Linux操作系统

2.3 实验环境

  阿里云ESS主机   8CPU    30GARM   1Mbps   250G硬盘   40G系统盘   centos7.3

2.4 安装步骤

2.4.1 安装docker

1、安装依赖包

yum install -y yum-utils device-mapper-persistent-data lvm2

2、更改并使用稳定的yum源

 yum-config-manager \
--add-repo \
https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

3、更新yum软件源缓存

yum makecache fast

4、安装docker-ce

yum install docker-ce

5、启动docker

systemctl start docker

6、建立docker用户组

sudo groupadd docker

7、将当前用户加入docker组(root用户可以不加)

usermod -aG docker $USER

8、将docker配置为在系统重启时自动启动

systemctl enable docker

2.4.2 安装Blackduck

1、转到github中的Blackduck hub空间,然后选择“ blackducksoftware / hub”,找到最新版本hub连接并复制

wget + 链接地址
(例如:wget https://github.com/blackducksoftware/hub/archive/v4.4.0.tar.gz)

2、 解压安装包

tar xvf  安装包名称

3、找到hub-proxy.env和hub-webserver.env文件并将文件中的localhost更改为本机IP。

4、去安装包路径下的docker-swarm文件夹下执行命令

docker swarm init

5、准备安装Blackduck,接下来部署组成Blackduck的所有容器

docker stack deploy -c docker-compose.yml hub

6、完成Docker Swarm的部署

docker service scale hub_jobrunner = 2

2.4.3 验证并登录

1、判断所有容器的状态是否是健康

docker ps

2、Blackduck的登录地址为主机IP,端口为443,协议为https,登录用户名为sysadmin,密码为blackduck。

3、下面试登录界面图,不过需要注意的是购买注册ID之后才能进入,否则无法使用。

参考资料:

https://www.synopsys.com/blogs/software-security/installing-black-duck-hub/

Blackduck的Hub安装教程的更多相关文章

  1. Redis笔记(一):Redis安装教程

    Redis是一个开源的使用ANSI C语言编写.支持网络.可基于内存亦可持久化的日志型.Key-Value数据库,并提供多种语言的API. Redis是目前应用最广泛的内存数据存储技术,相比之前的Me ...

  2. Docker系列之MySQL安装教程

    Docker系列之MySQL安装教程 有了前面的基础教程Docker系列之常用命令操作手册之后,本博客记录一篇mysql的安装教程 mysql镜像查询命令 docker search mysql 几个 ...

  3. Windows AD日志分析平台WatchAD安装教程

    目录 WatchAD介绍 安装环境 WatchAD安装(日志分析端服务) 基础环境配置 安装WatchAD 运行WatchAD WatchAD-web安装(Web监控端服务) 下载WatchAD-We ...

  4. Docker的介绍与安装教程

    基于Windows系统下docker的介绍与安装教程以及更换docker镜像源教程 目录 基于Windows系统下docker的介绍与安装教程以及更换docker镜像源教程 Docker的核心概念 D ...

  5. Prometheus安装教程

    Prometheus安装教程 欢迎关注H寻梦人公众号 参考目录 docker安装Prometheus 基于docker 搭建Prometheus+Grafana prometheus官方文档 dock ...

  6. Linux+apache+mono+asp.net安装教程

    Linux+apache+mono+asp.net安装教程(CentOS上测试的) 一.准备工作: 1.安装linux系统(CentOS,这个就不多讲了) 2.下载所需软件 http-2.4.4.ta ...

  7. Greenplum 源码安装教程 —— 以 CentOS 平台为例

    Greenplum 源码安装教程 作者:Arthur_Qin 禾众 Greenplum 主体以及orca ( 新一代优化器 ) 的代码以可以从 Github 上下载.如果不打算查看代码,想下载编译好的 ...

  8. git 安装教程

    昆,简单说下安装教程1,安装Git2,安装TortoiseGit3,打开第一步安装的git工具GIT BASH

  9. Docker和Docker-compose安装教程以及docker-elk,docker-storm安装教程

    此安装教程仅供我自己安装配置时查看,其他的人不可以偷看!!! 安装Docker 1. Update package information, ensure that APT works with th ...

随机推荐

  1. VScode 连接虚拟机

    VScode 连接虚拟机 在VScode上面使用SSH连接虚拟机,编写代码以及运行都将会方便许多 打开VScode,安装Remote-SSH插件 配置SSH连接信息 点击左侧第四个图标,然后单击设置按 ...

  2. SOS DP学习笔记

    Sum over Subsets(SOS) DP 一.引入 给出一个长度为\(2^n\)的数组\(A\),对于每一个\(mask< 2^n\)要求计算出\(f[mask]=\sum_{sub\i ...

  3. 数组复制函数memcpy和strcpy

    strcpy和memcpy主要有以下3方面的区别.1.复制的内容不同.strcpy只能复制字符串,而memcpy可以复制任意内容,例如字符数组.整型.结构体.类等.2.复制的方法不同.strcpy不需 ...

  4. 要习惯用vector代替数组

    cin>>n>>m; vector<int>a(n),b(m); 或者: vector<int>a(n,0),b(m,0);

  5. hdu5496 Beauty of Sequence

    Time Limit: 6000/3000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others) Total Submission ...

  6. Codeforces Round #650 (Div. 3) E. Necklace Assembly (暴力)

    题意:有一个字符串,要求使用其中字符构造一个环(不必全部都用),定义一个环是k美的,如果它转\(k\)次仍是原样,现在给你\(k\),要求最长的k美环的长度. 题解:我们首先看\(k\),如果一个环转 ...

  7. 手工数据结构系列-C语言模拟栈 hdu1022

    这个题我一开始是这么想的.. 爆搜所有可能的出栈序列 然后对输入进行匹配 这样我感觉太慢 然后我们可以想到直接通过入栈序列对出栈序列进行匹配 但是我犯了一个错误..那就是出栈序列一定到入栈序列里找.. ...

  8. USB2.0协议学习笔记---USB工作过程(类的方法)

    前面学习了那么多的概念,这里需要记住一点分层概念即设备 ---> 配置 ---> 接口 ---> 端点,这种分层的概念结构 . 也可以理解为端点构成接口,接口组成配置,配置组成设备. ...

  9. ESLint & .eslintignore

    ESLint & .eslintignore https://stackoverflow.com/questions/42250257/disable-eslint-rules-for-fol ...

  10. SVG & Blob & Base64

    SVG & Blob https://developer.mozilla.org/en-US/docs/Web/API/Blob SVG & Base64 https://develo ...