docker+gitlab+ jenkins+sonarqube 自动化push审计搭建

版权声明:欢迎转载,但是必须保留本文的署名Jaskzon。如您有任何商业合作或者授权方面的协商,请给我留言:[email protected] https://blog.csdn.net/Jaskzon/article/details/87969961

一、安装sonarqube

1、拉取postgres数据库镜像

docker pull  postgres

2、启动数据库镜像

docker run --name db -e POSTGRES_USER=sonar -e POSTGRES_PASSWORD=sonar -d postgres

3、拉取sonarqube镜像

docker pull sonarqube

4、启动sonarqube 镜像

docker run --name sq --link db -e SONARQUBE_JDBC_URL=jdbc:postgresql://db:5432/sonar -p 9000:9000 -d sonarqube

二、安装jenkins

1、拉取jenkins镜像

docker pull jenkins

2、启动jenkins镜像

docker run -d -p 8080:8080 -p 50000:50000 jenkins

3、系统管理->插件管理->Available,安装SonarQube Scanner for Jenkins、Gitlab Hook、Gitlab Authentication、Git、Gitlab插件
4、系统管理->系统设置->SonarQube servers,配置sonarqube server,如下图所示:
在这里插入图片描述
5、系统管理->全局工具配置,配置SonarQube Scanner
在这里插入图片描述

三、安装gitlab

1、拉取gitlab-ce镜像

docker pull gitlab/gitlab-ce

2、启动gitlab镜像 root/rootroot

docker run -d --hostname localhost --publish 443:443 --publish 80:80 --publish 22:22 --name gitlab --restart always --volume /Users/sec-mac/Documents/docker/gitlab/config:/etc/gitlab --volume /Users/sec-mac/Documents/docker/gitlab/logs:/var/log/gitlab --volume /Users/sec-mac/Documents/docker/gitlab/data:/var/opt/gitlab gitlab/gitlab-ce

四、配置gitlab、jenkins凭据

1、生成公私钥,控制台执行

ssh-keygen -t rsa

2、gitlab 部署公钥:Settings->SSH Keys,
在这里插入图片描述
3、jenkins部署私钥:凭据->系统->全局凭据->添加凭据
在这里插入图片描述
稍后将会使用到

五、创建任务

1、新建一个自由风格的任务
在这里插入图片描述
2、General配置
a、删除旧的构建
在这里插入图片描述
b、构建失败重试
在这里插入图片描述
3、Source Code Management配置
在这里插入图片描述
其中Credentials使用之前已配置的。
4、配置Build Triggers
在这里插入图片描述
上图中的URL就是提供给gitlab的webhook地址,稍后将会使用到的,记录下来。
点击右下角的Advanced,生成Secret token,稍后将会使用到,记录下来
在这里插入图片描述
5、配置Build,选择Execute SonarQube Scanner
在这里插入图片描述
6、配置gitlab webhook
进入项目
在这里插入图片描述
从左侧Settings->Integrations,进入
在这里插入图片描述
输入之前记录的url和secret token,如上所示,其中admin:admin是jenkins的用户名和密码。
添加成功后,在此页面将会看到:
在这里插入图片描述
从Test中选择Push events进行测试,此时jenkins将自动进行构建,如下:
在这里插入图片描述
如果添加webhook地址时出现:Url is blocked : Requests to the local network are not allowed.
在这里插入图片描述
需做如下启用:

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/Jaskzon/article/details/87969961