Linux部署Sonarqube+Gogs+Jenkins(一)
作者:mmseoamin日期:2024-04-29

Linux部署Sonarqube+Gogs+Jenkins(一),在这里插入图片描述,第1张


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部署Sonarqube+Gogs+Jenkins(一),在这里插入图片描述,第2张

                      二、Linux安装Python环境

                      https://blog.csdn.net/YZL40514131/article/details/121583650

                      三、Linux安装Jenkins环境

                      1、/usr目录下创建jenkins目录

                      Linux部署Sonarqube+Gogs+Jenkins(一),在这里插入图片描述,第3张

                      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&
                      

                      Linux部署Sonarqube+Gogs+Jenkins(一),在这里插入图片描述,第4张

                      4、特别注意:云服务器需要打开8080端口

                      Linux部署Sonarqube+Gogs+Jenkins(一),在这里插入图片描述,第5张

                      Linux部署Sonarqube+Gogs+Jenkins(一),在这里插入图片描述,第6张

                      Linux部署Sonarqube+Gogs+Jenkins(一),在这里插入图片描述,第7张

                      Linux部署Sonarqube+Gogs+Jenkins(一),在这里插入图片描述,第8张

                      Linux部署Sonarqube+Gogs+Jenkins(一),在这里插入图片描述,第9张

                      Linux部署Sonarqube+Gogs+Jenkins(一),在这里插入图片描述,第10张

                      5、访问jenkins

                      http://114.115.130.103:8080/

                      5.1、复制路径将密码粘贴,点击继续

                      Linux部署Sonarqube+Gogs+Jenkins(一),在这里插入图片描述,第11张

                      Linux部署Sonarqube+Gogs+Jenkins(一),在这里插入图片描述,第12张

                      Linux部署Sonarqube+Gogs+Jenkins(一),在这里插入图片描述,第13张

                      四、Linux安装gogs和Git应用

                      1、先进行git的安装

                      注意:必须先安装Git

                      安装非常简单:yum install git -y

                      2、上传

                      3、解压

                      Linux部署Sonarqube+Gogs+Jenkins(一),在这里插入图片描述,第14张

                      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&
                      

                      Linux部署Sonarqube+Gogs+Jenkins(一),在这里插入图片描述,第15张

                      5、问题解决

                      gogs默认使用的是3000端口,由于我的云服务器3000端口已经被占用了,所以访问不了页面。

                      5.1、查看3000端口被那个应用程序被占用了

                      Linux部署Sonarqube+Gogs+Jenkins(一),在这里插入图片描述,第16张

                      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+Gogs+Jenkins(一),在这里插入图片描述,第17张

                      Linux部署Sonarqube+Gogs+Jenkins(一),在这里插入图片描述,第18张

                      五、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
                      

                      Linux部署Sonarqube+Gogs+Jenkins(一),在这里插入图片描述,第19张

                      第二步:上传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
                      

                      Linux部署Sonarqube+Gogs+Jenkins(一),在这里插入图片描述,第20张

                      特别注意:云服务器中需要加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

                      报错日志截图

                      Linux部署Sonarqube+Gogs+Jenkins(一),在这里插入图片描述,第21张

                      第四步:启动sonar,先切换⽤户再运⾏

                      # 切换用户
                      su sonarqube
                      # 启动(sonar本身就是后台运行,无需其它操作) 华
                      ./sonarqube-9.7.0.61563/bin/linux-x86-64/sonar.sh start
                      

                      Linux部署Sonarqube+Gogs+Jenkins(一),在这里插入图片描述,第22张

                      特别注意:Linux系统切换用户后只显示$问题

                      问题描述:Linux系统切换用户后只显示$问题:

                      root@hecs-213321:~# clear
                      root@hecs-213321:~# su sonarqube
                      $ 
                      

                      原因分析:

                      证明默认的shell为/bin/sh,而不是/bin/bash。

                      l改成/bin/bash,即可解决问题。创建用户的时候未指定shell类型。

                      Linux部署Sonarqube+Gogs+Jenkins(一),在这里插入图片描述,第23张

                      第五步:访问:http://IP:9000/ ,并且进行汉化。

                      Linux部署Sonarqube+Gogs+Jenkins(一),在这里插入图片描述,第24张

                      Linux部署Sonarqube+Gogs+Jenkins(一),在这里插入图片描述,第25张

                      Linux部署Sonarqube+Gogs+Jenkins(一),在这里插入图片描述,第26张


                      Linux部署Sonarqube+Gogs+Jenkins(一),在这里插入图片描述,第27张