Linux部署Sonarqube+Gogs+Jenkins
- 一、1.Linux安装JDK11环境
- 1. 本地进行上传
- 2. 进入到/usr/java目录,并且进行解压
- 3. 配置文件/etc/profile,配置环境变量
- 4.让对应的配置文件生效
- 5. 验证
- 二、Linux安装Python环境
- 三、Linux安装Jenkins环境
- 1、/usr目录下创建jenkins目录
- 2、将jenkins.war包上传到/usr/jenkins目录下
- 3、后台运行jenkins
- 4、特别注意:云服务器需要打开8080端口
- 5、访问jenkins
- 5.1、复制路径将密码粘贴,点击继续
- 四、Linux安装gogs和Git应用
- 1、先进行git的安装
- 2、上传
- 3、解压
- 4、启动
- 5、问题解决
- 5.1、查看3000端口被那个应用程序被占用了
- 5.2、查看3000端口占用的进程PID
- 5.3、杀死进程
- 5.4、再次启动gogs服务
- 5.5、验证页面成功打开
- 五、Linux安装SonarQube
- 1、SonarQube工具介绍
- 2、SonarQube环境安装
- 第一步:新建⽤户与组
- 第二步:上传sonarqube安装包(zip⽂件)所以需要安装⼀个unzip 进⾏解压
- 第三步:移动文件夹到非 ~ 下,并设置⽤户组课操作权限( -R 后面跟的是组名)
- 特别注意:云服务器中需要加sudo,否则权限不够,启动sonarqube失败
- 第四步:启动sonar,先切换⽤户再运⾏
- 特别注意:Linux系统切换用户后只显示$问题
- 第五步:访问:http://IP:9000/ ,并且进行汉化。
一、1.Linux安装JDK11环境
需要下载对应的jdk的包 – jdk 11
scp 本地文件路径 用户名@ip:要保存路径
1. 本地进行上传
或者通过xftp软件传输到服务器中
scp jdk11.0.18_linuxx64_bin.tar.gz root@192.168.31.178:/usr/java
2. 进入到/usr/java目录,并且进行解压
cd /usr/java
tar -zxvf jdk11.0.18_linuxx64_bin.tar.gz
3. 配置文件/etc/profile,配置环境变量
a. 添加一个环境变量:JAVA_HOME – java的路径
b. 添加一个环境变量:CLASSPATH
c. 将JAVA可执行文件添加到PATH当中
d. 进行保存:esc ————>:wq
export JAVA_HOME=/usr/java/jdk-11.0.18
export CLASSPATH=$JAVA_HOME/lib/
export PATH=$PATH:$JAVA_HOME/bin
4.让对应的配置文件生效
source /etc/profile
5. 验证
java -version
二、Linux安装Python环境
https://blog.csdn.net/YZL40514131/article/details/121583650
三、Linux安装Jenkins环境
1、/usr目录下创建jenkins目录
2、将jenkins.war包上传到/usr/jenkins目录下
root@hecs-213321:/usr/jenkins# ls
jenkins.log jenkins.war
3、后台运行jenkins
nohup java -jar jenkins.war jenkins.war>jenkins.log 2>&1&
nohup java -jar jenkins.war jenkins.war>jenkins.log 2>&1&
4、特别注意:云服务器需要打开8080端口
5、访问jenkins
http://114.115.130.103:8080/
5.1、复制路径将密码粘贴,点击继续
四、Linux安装gogs和Git应用
1、先进行git的安装
注意:必须先安装Git
安装非常简单:yum install git -y
2、上传
3、解压
tar -zxvf gogs_0.13.0_linux_amd64.tar.gz
tar -zxvf gogs_0.13.0_linux_amd64.tar.gz
4、启动
nohup ./gogs web>gogs.log 2>&1&
5、问题解决
gogs默认使用的是3000端口,由于我的云服务器3000端口已经被占用了,所以访问不了页面。
5.1、查看3000端口被那个应用程序被占用了
5.2、查看3000端口占用的进程PID
root@hecs-213321:~/installation_package/gogs/gogs# lsof -i:3000
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
grafana-s 3481095 root 8u IPv6 16700086 0t0 TCP *:3000 (LISTEN)
grafana-s 3481095 root 16u IPv6 33473034 0t0 TCP hecs-213321:3000->111.196.125.31:64485 (ESTABLISHED)
5.3、杀死进程
root@hecs-213321:~/installation_package/gogs/gogs# kill -9 3481095
5.4、再次启动gogs服务
root@hecs-213321:~/installation_package/gogs/gogs# nohup ./gogs web>gogs.log 2>&1&
[1] 2683618
5.5、验证页面成功打开
五、Linux安装SonarQube
1、SonarQube工具介绍
提交代码—通过Sonarqube进行扫描(前置条件:jdk必须是11)
SonarQube属于静态测试和动态测试中的静态测试
白盒测试和黑盒测试中的白盒测试
SonarQube分为:
介绍工下SonarQube工具:(分为两个模块)
1.分析器(Web页面,是一个可视化的平台)——SonarQube
2.扫描器(工具–对代码进行扫描之后提交到分析器上去)——SonarScanner
2、SonarQube环境安装
注意:
1、sonar不能用root账号,所以就存在新建账号,并且赋权限操作
2、sonar是一个zip文件,需要安装unzip,apt-get install zip
第一步:新建⽤户与组
# 进入到主目录
cd ~
# 创建一个组:sonarqube
groupadd sonarqube
# 语法:useradd 用户名 -g 组名 -p 密码
useradd sonarqube -g sonarqube -p sonarqube
第二步:上传sonarqube安装包(zip⽂件)所以需要安装⼀个unzip 进⾏解压
# 上传文件
scp sonarqube-9.7.0.61563.zip root@192.168.2.18:~/
# 安装unzip
yum install unzip -y
# 解压文件到当前路径下
unzip sonarqube-9.7.0.61563.zip -d ./
第三步:移动文件夹到非 ~ 下,并设置⽤户组课操作权限( -R 后面跟的是组名)
# 移动文件夹到/opt目录下
mv sonarqube-9.7.0.61563 /opt
# 进入到opt的文件路径,并且赋予权限
cd /opt
# chown -R sonarqube sonar安装包解压后的路径;用于更改文件或目录的所有者
chown -R sonarqube sonarqube-9.7.0.61563/
# chgrp -R sonarqube sonar安装包解压后的路径;用于更改文件或目录的所属组
chgrp -R sonarqube sonarqube-9.7.0.61563/
# chown -R sonarqube JAVA_HOME路径;用于更改文件或目录的所有者
chown -R sonarqube /usr/jdk
# chgrp -R sonarqube JAVA_HOME路径;用于更改文件或目录的所属组
chgrp -R sonarqube /usr/jdk
特别注意:云服务器中需要加sudo,否则权限不够,启动sonarqube失败
root@hecs-213321:/opt# sudo chown -R sonarqube6 sonarqube-9.7.0.61563
root@hecs-213321:/opt# sudo chgrp -R sonarqube6 sonarqube-9.7.0.61563
root@hecs-213321:/opt# sudo chown -R sonarqube6 /usr/java/jdk-11.0.18/bin/java
root@hecs-213321:/opt# sudo chgrp -R sonarqube6 /usr/java/jdk-11.0.18/bin/java
报错日志截图
第四步:启动sonar,先切换⽤户再运⾏
# 切换用户
su sonarqube
# 启动(sonar本身就是后台运行,无需其它操作) 华
./sonarqube-9.7.0.61563/bin/linux-x86-64/sonar.sh start
特别注意:Linux系统切换用户后只显示$问题
问题描述:Linux系统切换用户后只显示$问题:
root@hecs-213321:~# clear
root@hecs-213321:~# su sonarqube
$
原因分析:
证明默认的shell为/bin/sh,而不是/bin/bash。
l改成/bin/bash,即可解决问题。创建用户的时候未指定shell类型。