1. 程式人生 > >Jenkins+Gitlab搭建CI持續整合架構

Jenkins+Gitlab搭建CI持續整合架構

首先安裝Jenkins和Gitlab

很簡單就不多說了,貼個地址
Installing Jenkins
Install a GitLab CE

需要注意的是,在中國大陸由於牆的問題,Gitlab下載非常的慢,有可能導致下載失敗了。。
在這裡推薦一下清華大學映象源,在國內速度槓槓的。
Gitlab Community Edition 映象使用幫助
有興趣的可以看看它們的映象首頁,目前支援的映象挺多的,而且還在不斷的增加呢。

安裝Jenkins外掛

做持續整合,Jenkins預設安裝後還需要再安裝一些外掛。
安裝外掛很簡單,通過瀏覽器進入安裝好Jenkins的伺服器首頁——>點選系統管理——>管理外掛——>可選外掛
然後過濾查詢以下外掛,勾選安裝即可

  • Git client plugin
  • Git plugin
  • Gitlab Hook Plugin

建立程式碼倉庫新增Webhooks

好了,讓我們來開始實際操作吧
先在Gitlab上建立一個倉庫,然後在專案的設定中選擇Webhooks,
在URL上填http://[jenkins-ip]:8080/gitlab/build_now
前面是jenkins伺服器的IP,埠號預設是8080,如果伺服器上有類似tomcat這樣的程式佔用埠,
就需要更改埠號了,這裡也就要相應的修改了。
還有一種情況,如果是通過Jenkins官網下載的war包形式,
這裡的URL就要改為http://[jenkins-ip]:8080/jenkins/gitlab/build_now

建立Jenkins專案

進入我們伺服器的Jenkins首頁——>點選新建——>輸入一個專案名稱——>選擇構建一個自由風格的軟體專案(free-style)點選ok
進入了專案配置頁面,然後按以下步驟操作就好了
1. 原始碼管理設定,選中Git,把剛剛從Gitlab上建立的專案地址複製過來,
在這裡推薦使用http的形式,避免因為許可權的問題導致程式碼無法pull下來。

  1. 構建設定,繼續往下拖看到構建選項,點選增加構建步驟,可以根據具體專案來選擇,
    在這裡以Web的Maven專案為例。
    選擇Invoke top-level Maven targets,Maven Version可根據個人選擇,如果要新增自己下載的版本,
    可在首頁——>系統管理——>Global Tool Configuration全域性工具配置下面找到Maven進行新增。推薦使用自己的
    Golas
    框中填寫maven的執行命令,比如:
package
tomcat:redeploy -Dmaven.test.skip=true -e -X

之後儲存應用即可
注意:這裡不需要新增mvn命令,jenkins會自動幫我們新增的,還有每一個命令佔單獨一行

自動化構建

好了,基本上都配置完了,現在該我們編寫程式程式碼了。只需要從Gitlab上把原始碼pull到本地,然後進行coding修改再push上去即可。
Jenkins那邊會監聽到push的操作後就自動pull下載更新程式碼然後進行相應的構建部署了。
進入到Jenkins專案,可以檢視到構建歷史下面正在構建的專案,點選專案編號,再點選Console Output控制檯輸出就可以檢視構建過程的詳細日誌了。

總結

當然了持續整合肯定沒這麼簡單的,後面應該還要有自動Test測試,匯出報告之類的。在這裡只是搭建一個最基本最簡單的持續整合框架。

相關推薦

Jenkins+Gitlab搭建CI持續整合架構

首先安裝Jenkins和Gitlab 很簡單就不多說了,貼個地址 Installing Jenkins Install a GitLab CE 需要注意的是,在中國大陸由於牆的問題,Gitlab下載非常的慢,有可能導致下載失敗了。。 在這裡推薦一下

Gitlab CI Multi Runner搭建CI持續整合環境

GitLab不僅僅只是程式碼託管的工具,它還集成了CI的功能,通過Gitlab CI Multi Runner工具可以更方便的搭建持續整合環境。 在安裝好GitLab之後還需要再安裝一個叫gitlab-ci-multi-runner的工具。 PS: 當然了肯

物聯網架構成長之路(47)-利用GitLab實現CI持續整合

0.前言  前段時間,考慮到要練習部署一套CI/CD的系統。一開始考慮到Jenkins,隨著這兩天的瞭解,發現最新版的GitLab已經提供有CI/CD集成了。所以本次部落格,乾脆一步到位,直接用GitLab裡面的CI/CD模組。Jenkins可能需要更高階的應用場合。經過測試GitLab自帶的功能完全符合我的

Jenkins+GitLab+fir.im 持續整合

寫在前面 最近公司搞自動化打包,從0開始折騰了幾天終於完成了,準備整理一下,寫成文件。 1、下載Jenkins並安裝 Jenkins下載地址:https://jenkins.io 在主頁面點選Download Jenkins選擇Mac OS。 安裝沒有什麼好介紹

利用Jenkins+Gitlab搭建持續整合(CI)環境

這次實習的任務之一就是搭建一個持續整合(Continuous Integration)環境。 我們選擇Jenkins作為持續整合工具,其優點是提供web GUI配置介面,方便配置,還可以安裝很多第三方外掛(plugin)進行定製與擴充套件,功能強大。 其次選擇Gitlab作為git server。Gitla

CI持續整合系統環境--Gitlab+Gerrit+Jenkins完整對接

原文地址https://www.cnblogs.com/kevingrace/p/5651447.html 近年來,由於開源專案、社群的活躍熱度大增,進而引來持續整合(CI)系統的誕生,也越發的聽到更多的人在說協同開發、敏捷開發、迭代開發、持續整合和單元測試這些拉風的術語。然而,大都是僅僅聽到在說而已,國內

Jenkins+Git+Gitlab+Ansible實現持續整合自動化部署靜態網站(一)--技術流ken

  前言   在之前已經寫了關於Git,Gitlab以及Ansible的兩篇部落格《Git+Gitlab+Ansible劇本實現一鍵部署Nginx--技術流ken》,《Git+Gitlab+Ansible劇本實現一鍵部署動態網站(二)--技術流ken》,以及關於jenkins的簡單使

Jenkins+Git+Gitlab+Ansible實現持續整合自動化部署動態網站(二)--技術流ken

  專案前言   在上一篇部落格《Jenkins+Git+Gitlab+Ansible實現持續化整合一鍵部署靜態網站(一)--技術流ken》中已經詳細講解了如何使用這四個工具來持續整合自動化部署一個靜態的網站。 如果大家可以熟練掌握以上內容,勢必會在工作中減輕不小的工作量。 本篇

CI 持續整合Jenkins + Maven + Tomcat+ Jacoco

啟動Jenkins 的兩種方式: A:  D:\DevWork\tools>java -jar jenkins.war B. Put jenkins.war under the Tomcat folder:   D:\DevWork\t

Jenkins+SonarQube+Gitlab搭建自動化持續程式碼掃描質量平臺

文章目錄 前言 程式碼評審 SonarQube簡介 SonarQube安裝配置 小團隊持續程式碼掃描實踐 技術方案&實現 流程&標準 團隊&文化

Gitlabgitlab-CI 持續整合以及runner的配置簡版

在我們完成專案開發後,提交到git,當監聽提交後,自動進行編譯,並進行專案的部署,是不是一想就很爽,所以下面引入我們 > 的主角 —— gitlab-CI,中文文件。 Gitlab CI Gitlab-CI 是 GitLab Continuous Integration(Gitlab持

Android 專案配置 gitlab-ci 持續整合

一、專案根目錄下建立一個 .gitlab-ci.yml 檔案 然後在 .gitlab-ci.yml 中配置持續整合的指令碼: 指令碼配置詳細可以看:   Configuration of your jobs with .gitlab-ci.yml Setting up GitLab

GitLab CI持續整合配置方案

持續整合是一種軟體開發實踐,即團隊開發成員經常整合它們的工作,通過每個成員每天至少整合一次,也就意味著每天可能會發生多次整合。每次整合都通過自動化的構建(包括編譯,釋出,自動化測試)來驗證,從而儘早地發現整合錯誤。 關於持續整合,很不錯的文章:

Jenkins是什麼:持續整合CI)流程、特點、應用場景

那什麼是持續整合?Jenkins具體用來做什麼,對軟體開發有什麼益處呢? 總得來說,這兩者主要是涉及一個軟體質量的主題,特別是團隊開發軟體專案。下面就來介紹介紹下這兩者。 持續整合 持續整合,Continuous integration ,簡稱CI。 隨著軟體開發複雜度

搭建hudson/jenkins+cppcheck+cpplint+cccc持續整合環境

1 Jenkins介紹Jenkins是基於Java開發的一種持續整合工具,Hudson是它的前身。Jenkins用於監控程式重複的工作,包括:1、持續的軟體版本釋出/測試專案。2、監控外部呼叫執行的工作。l  Jenkins的特性1、易於安裝-只要把jenkins.war部署

Jenkins 搭建C++持續整合環境

簡介 本文主要介紹如何通過 Jenkins 搭建 C++的持續整合環境。最後達到的效果是每天00:00 - 08:00之間構建、測試和打包一次工程。 開發環境為 VS2015,測試工具為 CppUnit,打包工具為 Inno Setup。 本例的 Jenk

CI/持續整合系統 jenkins 部署

檢查centos7 系統自帶JDK 是否安裝  jenkins 是不支援在centos 系統自帶的JDK 環境中工作的 [[email protected] soft]# yum list installed | grep java 如果系統自帶了JDK

GitLab-CI持續整合CI)的介紹與執行機制

 GitLab持續整合(CI)的介紹與執行機制 GitLab-CI GitLab-CI就是一套配合GitLab使用的持續整合系統(當然,還有其它的持續整合系統,同樣可以配合GitLab使用,比如Jenkins)。而且GitLab8.0以後的版本是預設集成了GitLab-C

Jenkins配合GitLab進行專案持續整合與構建

    1. 按照博文《Centos7下Jenkins安裝》安裝好jenkins,確保外掛Git plugin和Subversion plugin已安裝     2. 配置JDK、Maven環境                   如下所示:              3.

gitlab,jenkins自動構建及持續整合

目的: 當開發人員向gitlab提交程式碼時,自動觸發jenkins構建,自動化測試等,通過在jenkins執行linux 命令或者指令碼實現應用部署,重啟。實現步驟: 1. 安裝 略。                  2. jenkins下載外掛(進入外掛管理  下載 g