java ci/cd環境搭建

蘇小林發表於2019-04-11

最近搭建了一套java的ci/cd環境,記錄下搭建過程?

注:下面演示軟體安裝在/opt

準備一臺機器,記憶體8G以上 系統版本centos 7

java ci/cd環境搭建

安裝java

從oracle官網下載並解壓

java ci/cd環境搭建

設定環境變數 vim /etc/profile

export JAVA_HOME=/opt/jdk1.8.0_201

export PATH=$JAVA_HOME/bin:/opt/rancher:/opt:/opt/apache-maven-3.6.0/bin:/opt/gitlab-runner:$PATH
複製程式碼
安裝nexus私服

編寫私服docker-compose.yml

version: "3"

services:
  nexus:
    image: sonatype/nexus3
    environment:
      - INSTALL4J_ADD_VM_PARAMS=-Xms512m -Xmx768m -XX:MaxDirectMemorySize=1g -Djava.util.prefs.userRoot=/nexus-data/javaprefs
    volumes:
      - ./nexus-data:/nexus-data
    ports:
      - "8081:8081"
複製程式碼

啟動

mkdir nexus-data
chmod -R 777 nexus-data
docker-compose up -d
複製程式碼

使用預設使用者名稱密碼 admin / admin123 登陸檢視效果

java ci/cd環境搭建

安裝jenkins

wget mirrors.jenkins.io/war-stable/…

製作jenkins啟動指令碼 start_jenkins.sh

#!/bin/bash

export JAVA_HOME=/opt/jdk1.8.0_201
export JRE_HOME=$JAVA_HOME/jre
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/*.jar:$JRE_HOME/lib:$CLASSPATH
export JENKINS_SERVER_PATH=/opt/jenkins_server

cd ${JENKINS_SERVER_PATH}
# nohup java -jar jenkins.war --httpPort=8080 >/dev/null 2>&1 &
nohup java -jar jenkins.war --httpPort=8080 > jenkins.log &
複製程式碼

設定開機啟動 vim /etc/rc.local

/opt/jenkins_server/start_jenkins.sh
複製程式碼

新增開發機

java ci/cd環境搭建

安裝jenkins外掛

在jenkins外掛中心安裝以下外掛: http://127.0.0.1:8080/pluginManager/available

名稱 作用
Publish Over SSH 將檔案發到目標伺服器
SonarQube Scanner for Jenkins 程式碼質量分析
Maven Integration plugin maven打包
JaCoCo plugin 自動測試並上報sonarqube
gitlab 連線gitlab程式碼庫
安裝docker
yum install -y docker
systemctl enable docker
systemctl start docker
複製程式碼
安裝gitlab

下載laradock工具包

git clone https://github.com/laradock/laradock.git && cp env-example .env
複製程式碼

啟動gitlab

cd laradock && docker-compose up -d gitlab
複製程式碼

訪問ip:8989檢視效果

java ci/cd環境搭建

安裝yearning

下載yearning docker工具包

git clone https://github.com/cookieY/Yearning.git
cd Yearning/install/yearning-docker-compose
docker-compose up -d
複製程式碼

使用 預設賬號:admin,預設密碼:Yearning_admin 登陸檢視效果

java ci/cd環境搭建

安裝sonarqube

下載sonarqube docker工具包

git clone https://github.com/thyrlian/SonarOnDocker.git
複製程式碼

啟動sonarqube

docker-compose -f docker-compose-mysql.yml up -d
複製程式碼

訪問9000埠,檢視效果

java ci/cd環境搭建

安裝maven && graddle

從https://maven.apache.org/download.cgi下載maven並解壓 從https://gradle.org/releases/下載gradle並解壓 設定環境變數: vim /etc/profile

export JAVA_HOME=/opt/jdk1.8.0_201

export PATH=$JAVA_HOME/bin:/opt/rancher:/opt:/opt/apache-maven-3.6.0/bin:/opt/gradle-5.3.1/bin:/opt/gitlab-runner:$PATH
複製程式碼

驗證安裝

java ci/cd環境搭建

安裝kubectl && rancher cli
curl -LO https://storage.googleapis.com/kubernetes-release/release/$(curl -s https://storage.googleapis.com/kubernetes-release/release/stable.txt)/bin/darwin/amd64/kubectl

chmod +x kubectl

mv kubectl /opt/
複製程式碼

從https://github.com/rancher/cli/releases下載rancher cli並解壓 把rancher和kubectl加入環境變數

在rancher上建立api token並取得token內容

java ci/cd環境搭建

rancher cli配置token認證

rancher login https://rancherip:8843 -t rancher的token
複製程式碼
最終目錄結構

java ci/cd環境搭建

java ci/cd環境搭建

待後續更新...

相關文章