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. HDU-6874 Decision 倍增 (2020 HDU多校 D7 D)

    Decision 题意 从 \([0,t]\) 中等概率的选取两个数字 \(v_1,v_2\), 定义序列 \(X\) 有 \(X_0=v1+v2,X_{n+1}=(aX_n+c) \mod m\). ...

  2. Codeforces Round #667 (Div. 3)

    比赛链接:https://codeforces.com/contest/1409 A. Yet Another Two Integers Problem 题意 给出两个数 $a$ 和 $b$,有以下两 ...

  3. 01背包记录路径 (例题 L3-001 凑零钱 (30分))

    题意: 就是找出来一个字典序最小的硬币集合,且这个硬币集合里面所有硬币的值的和等于题目中的M 题解: 01背包加一下记录路径,如果1硬币不止一个,那我们也不采用多重背包的方式,把每一个1硬币当成一个独 ...

  4. C#之Dispose

    前言 谈到Dispose,首先需要理解C#的资源 资源类型 托管资源:由CLR创建和释放 非托管资源:资源的创建和释放不由CLR管理.比如IO.网络连接.数据库连接等等.需要开发人员手动释放. 如何释 ...

  5. WPF Animation For SizeChanged Of UIElement

    效果图 学到一个新词: Show me the money 背景 这几天查资料,看到 CodeProject 上面的一篇 Post <Advanced Custom TreeView Layou ...

  6. java通过HttpClient调用接口总结

    2.HttpClient 2.1简介: 最近看项目的代码,看到工程中有两个jar包张的很像,一个是commons.httpclient-3.1.jar,一个是httpclient4.2.1.jar,很 ...

  7. Git管理远程仓库

    一:使用远程仓库的目的 作用:备份,实现代码共享集中化管理: 二:将git本地仓库同步到远程仓库流程图 三:Git克隆操作 目的: 将远程仓库(github远程仓库项目代码)克隆到本地 如何克隆 1. ...

  8. Shell 编程练习

    将后缀名为 .txt 的文件改成 .log [root@k8s-master test]# touch localhost_2020-01-{02..26}.txt [root@k8s-master ...

  9. h5py/__init__.py:36: FutureWarning: Conversion of the second argument of issubdtype from `float` to `np.floating` is deprecated

    Reference 问题 ... h5py/__init__.py:36: FutureWarning: Conversion of the second argument of issubdtype ...

  10. 最新 uni-app 免费教程

    最新 uni-app 免费教程 uni-app 快速入门 steps 建议第一步,看完uni-app官网的首页介绍. 建议第二步,通过快速上手,亲身体验下uni-app. 建议第三步,看完<un ...