jenkins+gitlab+nexus持續整合與部署學習
待研究的知識點:
1、程式內容備份(jenkins專案配置、gitlab原始碼、nexus倉庫內容)
2、不清楚怎麼進行程式相關資料的遷移
3、不清楚如何清楚nexus整個倉庫內容
4、構建程式gradle,如何在程式build.gradle檔案中設定版本號,jenkins打包時使用此版本好。gradle-wrapper
4、這三個程式能否做叢集,是否能夠分散式儲存,解決單點故障(高階)
研究沒有解決問題:
jenkins中,本地打出的包中war包名稱為job專案名稱不是程式中定義的名稱,但是推送到nexus中的名稱是正確的
build.gradle 根據公司外網判定是否公司環境,進行maven倉庫的選擇
待進一步實踐:
把自定義的兩個host倉庫mymave-xxx加入到maven-public倉庫中,並進行最後一步最終問題測試。
一、環境
作業系統:全部為centos7.5.1804(共三臺)
伺服器與程式版本:
wkvm5(192.168.0.15)(2H4G):gitlab-11.1.2
wkvm6(192.168.0.16)(1H2G):jenkins-2.134-1.1
wkvm7(192.168.0.17)(1H2G):nexus-3.13
二、準備安裝包
jdk-8u162-linux-x64.rpm:jdk-1.8(不能低於此版本)
gradle-4.8.1-bin.zip:gradle-4.8程式構建程式
git-2.11.0.tar.gz:git版本管理
gitlab-11-1-stable-zh.tar.gz:gitlab漢化包
gitlab-ce-11.1.2-ce.0.el7.x86_64.rpm:gitlab社群版
jenkins-2.134-1.1.noarch.rpm:CI|CD整合軟體
nexus-3.13.0-01-unix.tar.gz:私有倉庫
三、各伺服器安裝對應軟體(細節見具體文件)
wkvm5安裝gitlab: 訪問地址:192.168.0.15/gitlab
wkvm6安裝jenkins、git、gradle、jdk: 訪問地址:192.168.0.16/jenkins
wkvm7安裝nexus: 訪問地址:192.168.0.17/nexus
四、三臺伺服器配合,資料準備
1、獲取gitlab Api Token(個人令牌)
2、jenkins伺服器生成金鑰對,並把公鑰內容拷貝到gitlab(設定->SSH金鑰)
3、在windows IDEA所在伺服器生成金鑰對,並把公鑰內容拷貝到gitlab(建立金鑰方式略)
五、準備java程式
在gitlab上建立一個程式倉庫,並在本地用idea拉取,在idea中新增程式檔案,並提交推送到gitlab上
六、準備jenkins專案
新建一個自由風格的專案,並配置專案 原始碼管理、構建(執行任務)、構建後
七、設定程式可外網訪問
通過阿里雲的一臺nginx,訪問本地的三臺伺服器程式(gitlab/jenkins/nexus)
相關文章
- 持續整合、持續交付與持續部署
- 持續整合持續部署持續交付_持續整合與持續部署之間的真正區別
- 微服務容器部署與持續整合微服務
- 持續整合、持續部署、持續交付、持續釋出
- 持續整合、持續交付和持續部署有什麼區別?0基礎學習linux技能Linux
- 你真的懂持續整合、持續交付、持續部署嗎?!
- 淺談持續整合(CI)、持續交付(CD)、持續部署(CD)
- 3分鐘瞭解清楚持續整合、持續交付、持續部署
- 對持續整合、 持續交付、持續部署和持續釋出的介紹
- CircleCI 與持續整合
- 使用流水線外掛實現持續整合、持續部署
- vuepress與travis-cli持續整合自動化部署Vue
- CI/CD 持續整合部署實踐
- 持續整合工具之Jenkins安裝部署Jenkins
- 以 egg.js 為例的持續整合(CI)、持續部署(CD)JS
- Docker+Gitlab+Jenkins+Maven程式碼持續整合與自動部署DockerGitlabJenkinsMaven
- 私有化輕量級持續整合部署方案--05-持續部署服務-Drone(上)
- 私有化輕量級持續整合部署方案--05-持續部署服務-Drone(下)
- 前端專案基於GitLab-CI的持續整合/持續部署(CI/CD)前端Gitlab
- SpringBoot+Docker+Git+Jenkins實現簡易的持續整合和持續部署Spring BootDockerGitJenkins
- jenkins+gitlab+docker持續整合部署maven專案JenkinsGitlabDockerMaven
- 持續整合 2.0
- Jenkins持續整合Jenkins
- 持續整合(二)
- Jenkins持續部署-Windows環境持續部署探究1JenkinsWindows
- AnimalController 學習 持續更新Controller
- Pytest 學習(二十七)- Jenkins+Allure+Pytest的持續整合Jenkins
- Jenkins持續整合配置Jenkins
- .net持續整合sonarqube篇之 sonarqube與jenkins整合(命令模式)Jenkins模式
- 持續整合指南:GitHubAction 自動構建+部署AspNetCore專案GithubNetCore
- Jenkins+Svn+Docker搭建持續整合環境 自動部署JenkinsDocker
- docker版jenkins持續整合部署及連線gitee碼雲DockerJenkinsGitee
- 知物由學 | SDK API自動化測試與持續整合API
- .net持續整合sonarqube篇之 sonarqube與jenkins整合(外掛模式)Jenkins模式
- 什麼是持續整合?
- 持續整合 Jenkins 簡介Jenkins
- 持續整合配置之Nuget
- jenkins+docker 持續整合JenkinsDocker