java ci/cd環境搭建

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

注:下面演示軟件安裝在/optmysql

準備一臺機器,內存8G以上 系統版本centos 7

安裝java

從oracle官網下載並解壓 git

設置環境變量 vim /etc/profilegithub

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.ymlsql

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"
複製代碼

啓動docker

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

使用默認用戶名密碼 admin / admin123 登錄查看效果shell

安裝jenkins

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

製做jenkins啓動腳本 start_jenkins.shvim

#!/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.localcentos

/opt/jenkins_server/start_jenkins.sh
複製代碼

添加開發機

安裝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查看效果

安裝yearning

下載yearning docker工具包

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

使用 默認帳號:admin,默認密碼:Yearning_admin 登錄查看效果

安裝sonarqube

下載sonarqube docker工具包

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

啓動sonarqube

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

訪問9000端口,查看效果

安裝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
複製代碼

驗證安裝

安裝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內容

rancher cli配置token認證

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

待後續更新...

相關文章
相關標籤/搜索