一、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配置,系統管理-全局安全配置
照我的一致就沒問題