Gitlab+Jenkins自動化部署


一、Gitlab搭建

1、准備源

cat >>/etc/yum.repos.d/gitlab-ce.repo<<EOF
[gitlab-ce]
name=Gitlab CE Repository
baseurl=https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el\$releasever/
gpgcheck=0
enabled=1
EOF

2、yum安裝

yum install gitlab-ce -y

gitlab-ctl reconfigure  #第一次啟動重載配置
netstat -tunlp|grep 80  #查看80端口

 

網頁打開http://IP:80

3、管理命令

gitlab-ctl reconfigure        #第一次啟動加載配置
gitlab-ctl start                   # 啟動
gitlab-ctl stop                   #停止
gitlab-ctl restart                #重啟
gitlab-ctl status                #查看狀態

gitlab-ctl tail                     #查看日志

二、java環境安裝

1、把下載jdk包解壓

tar zxvf jdk-8u211-linux-x64.tar.gz

mv jdk1.8.0_211 /usr/local/jdk1.8

2、配置環境變量

vim /etc/profile

JAVA_HOME=/usr/local/jdk1.8/
JAVA_BIN=/usr/local/jdk1.8/bin
JRE_HOME=/usr/local/jdk1.8/jre
PATH=$PATH:/usr/local/jdk1.8/bin:/usr/local/jdk1.8/jre/bin
CLASSPATH=/usr/local/jdk1.8/jre/lib:/usr/local/jdk1.8/lib:/usr/local/jdk1.8/jre/lib/charsets.jar

source /etc/profile

3、查看java安裝完成沒

java -version

三、安裝Jenkins

1、安裝下載完的rpm包

yum install jenkins-2.190.1-1.1.noarch.rpm -y

2、修改Jenkins的配置文件

vim /etc/sysconfig/jenkins

JENKINS_HOME="/data/jenkins"  #修改目錄
JENKINS_USER="root"        #修改執行的用戶,用jenkins用戶會出現權限問題
JENKINS_PORT="8001"        #修改下端口號

3、創建目錄,啟動

mkdir /data/jenkins

systemctl restart jenkins

這時候報錯了,找不到java啟動文件

Starting Jenkins bash: /usr/bin/java: No such file or directory

解決辦法:

vim  /etc/init.d/jenkins

candidates="
/usr/local/jdk1.8/bin/java
/etc/alternatives/java
/usr/lib/jvm/java-1.8.0/bin/java
/usr/lib/jvm/jre-1.8.0/bin/java
/usr/lib/jvm/java-1.7.0/bin/java
/usr/lib/jvm/jre-1.7.0/bin/java
/usr/lib/jvm/java-11.0/bin/java
/usr/lib/jvm/jre-11.0/bin/java
/usr/lib/jvm/java-11-openjdk-amd64
/usr/bin/java
"

4、重啟下服務

systemctl daemon-reload

systemctl restart jenkins

打開網頁http://ip:8001

 出現Jenkins離線的情況,解決辦法:

cd /data/jenkins/updates/
vim default.json
{"connectionCheckUrl":"http://www.baidu.com/"改成百度
cd /data/jenkins/
vim hudson.model.UpdateCenter.xml
<url>https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json</url>

重啟服務:

systemctl restart jenkins

安裝推薦的軟件就可以

主頁-系統管理-插件管理
我們安裝幾個插件 ,直接搜索就可以
ssh #執行遠程腳本
gitlab #集成gitlab用
Build Authorization Token Root #構建授權token
Gitlab hook #鈎子插件

四、配置jenkins和gitlab秘鑰對

配置秘鑰對,讓Jenkins和gitlab通信無需驗證

在服務器執行ssh-keygen

系統管理-憑據-添加憑據-導入私鑰

 

 把公鑰放入gitlab中

五、配置Jenkins的ssh服務器

jenkins主頁面-系統管理-系統設置

六、創建一個gitlab和Jenkins項目

1、gitlab

創建就行了 點點點就玩了,而且gitlab有步驟,按照步驟用git命令搞git倉庫出來

2、jenkins

取個名,項目名,最好可gitlab的項目名一致

在源碼管理點git

這個RUL填寫git項目的url就是這個 SSH的這個 點開你的項目就能看到了

 

 觸發器,當gitlab有提交時可以觸發

 

ssh配置(可選)

如果你不需要執行自定義腳本的話這布跳過

 

 保存!

七、gitlab hook配置

這第一行就寫http://jenkins的地址/job/test_jenkins_gitlab/build?token=123456    #test_jenkins_gitlab 是jenkins的項目名,token是我剛才設置的

點下邊ok

如果報錯403 說明沒有權限,其他的則是配置問題

403報錯解決辦法:我們把jenkins配置,系統管理-全局安全配置

照我的一致就沒問題

 

參考:https://www.cnblogs.com/wsy1030/p/9228488.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM