1. 程式人生 > >Jenkins + gitlab 自動化部署

Jenkins + gitlab 自動化部署

大綱

  1. 思路講解
  2. jenkins 安裝
  3. gitlab 安裝
  4. jenkins 與 gitlab配置自動化部署
  5. 測試
  6. 可能存在的問題

思路講解

gitlab->pull(其他操作)->webHook(監聽到)->觸發(jenkins構建操作)->jenkins構建->pull 指定專案->構建指令碼->完成。

這裡寫圖片描述

jenkins安裝

下載jenkins war

wget http://mirrors.jenkins.io/war-stable/latest/jenkins.war

設定jenkins 根目錄位置(linux centos 預設安裝在/root/.jenkins目錄下)

a. 編輯 bash_profile 檔案

   vi /root/.bash_profile

b. 新增如下內容(設定jenkins根目錄)

   export JENKINS_HOME=/opt/jenkins

c. 生效更改

   source /root/.bash_profile

啟動jenkins(指定8888埠號)[這裡只是演示,正常情況下不要這麼啟動,將war放到tomcat下]

nohup java -jar jenkins.war --httpPort=8888 &

檢視啟動情況

ps aux | grep jenkins

web訪問

http://ip:8888

安裝嚮導

根據頁面顯示的路徑檢視祕鑰並填入

   cat /opt/jenkins/secrets/initialAdminPassword

這裡寫圖片描述

安裝官方推薦外掛,選擇 左側 選項進行安裝

這裡寫圖片描述

這裡寫圖片描述

注:這裡有些外掛提示安裝失敗,沒有關係,正常情況下不會影響使用,可在後臺進行外掛二次安裝.

建立使用者

這裡寫圖片描述

開始使用

這裡寫圖片描述

gitlab安裝

獲取 bitnami gitlab 一鍵安裝包

wget https://bitnami.com/redirect/to/137681/bitnami-gitlab-8.14.3-0-linux-x64-installer.run

注意: 現在bitnami gitlab 已經不提供.run檔案下載,想獲取其他版本可以百度 google 一下
bitnami gitlab 官網下載地址為:

https://bitnami.com/stack/gitlab

安裝gitlab

a. 修改許可權(可執行)
chmod +x bitnami-gitlab-8.2.3-4-linux-installer.run

b. 執行.run檔案
./bitnami-gitlab-8.2.3-4-linux-installer.run

安裝細節

這裡寫圖片描述

web訪問

ip:埠

以上就完成了基礎環境的搭建。

jenkins 與 gitlab自動化部署配置

新建git倉庫

這裡寫圖片描述

這裡寫圖片描述

初始化git倉庫

這裡寫圖片描述

克隆程式碼並上傳到git 倉庫

1. git clone xxx.git

2. vim  index.html

<html>
    <head>
        <title>Demo</title>
    </head>
    <body>
         <h1>hello world!</h1>
    </body>
</html>

3. git add .

4. git commit -m 'init'

5. git push -u origin master

jenkins 安裝必要外掛

  • Build Authorization Token Root Plugin(遊客也可以進行job build)

jenkins->系統管理->管理外掛

這裡寫圖片描述

建立任務(選擇自由風格)

這裡寫圖片描述

git源配置

這裡寫圖片描述

這裡寫圖片描述

這裡寫圖片描述

構建觸發器

這裡寫圖片描述

以上生成的token用作 gitlab web_hook 通訊使用 下方的url地址形式即web-hook url地址
JENKINS_URL/job/Demo/build?token=TOKEN_NAME

構建

這裡寫圖片描述

這裡我們使用 Execute shell 形式 即 shell 指令碼語言進行構建操作

這裡寫圖片描述

由於構建的是php專案 只需要把原始碼傳送到web目錄下即可。
注意: 構建部分就是你專案構建的時候要做的事情 如果是java 要使用maven 或者 gradle構建的話 可執行相應的指令碼。 此部分已經完成程式碼pull動作 接下來要做什麼 由你來指定。

gitlab hook 配置

這裡寫圖片描述

來到你的專案下 找到webHook配置 進入

這裡寫圖片描述

配置完成後 點選下方test 進行測試

這裡寫圖片描述

以上 配置結束。

測試

修改jenkins_demo 內容

這裡寫圖片描述

push 遠端git庫

這裡寫圖片描述

自動構建完成

這裡寫圖片描述

可能存在的問題

  • 測試gitlab webhook時 可能會出現通訊問題,原因時jenkins本身禁止跨站點請求

這裡寫圖片描述

這裡寫圖片描述

相關推薦

k8s+Jenkins+GitLab-自動化部署asp.net core專案

0、目錄 整體架構目錄:ASP.NET Core分散式專案實戰-目錄 k8s架構目錄:Kubernetes(k8s)叢集部署(k8s企業級Docker容器叢集管理)系列目錄 此文閱讀目錄: 1、閒聊 2、部署流程介紹 3、部署Harbor倉庫 4、jenkins-slav

Jenkins + gitlab 自動化部署

大綱 思路講解 jenkins 安裝 gitlab 安裝 jenkins 與 gitlab配置自動化部署 測試 可能存在的問題 思路講解 gitlab->pull(其他操作)->webHook(監聽到)->觸發(jenkins構

Jenkins+Ansible+Gitlab自動化部署三劍客

DDU 賬號密碼 rep 原因 ems select conf 當前 director 最近一直在學習Ansible的一些playbook的寫法, 所以一直沒有怎麽更新, 想到目前大家對諸如saltstack, docker, Ansible等自動化部署相關的工具很感興趣,

jenkins+gitlab自動化編譯部署方案探索及服務端編譯webpack實戰

width 代碼量 條件 correct parameter 錯誤 req 格式 提前 一. 背景 之前我們的開發流程為在本地進行webpack打包編譯,然後svn提交源代碼和編譯後的代碼。同時每次提交前也會從svn更新源代碼和編譯後的代碼。這樣做有幾個缺點: 1. s

Jenkins+Ansible+Gitlab 自動化部署三劍客

1-1 課程介紹 2-1 GitLab工作流程 2-2 GitLab工作流程 2-3 GItLab安裝管理 2-4 GitLab的應用 3-1 Ansible簡介 3-2 Ansible的優勢和應用場景 3-3 Ansible配置virtualenv安裝配置 3-4 An

基於gitlabjenkins自動化部署例項

gitlab+jenkins服務簡述: GitLab是一個程式碼倉庫,用來管理程式碼。Jenkins是一個自動化伺服器,可以執行各種自動化構建、測試或部署任務。 所以這兩者結合起來,就可以實現開發者提交程式碼到GitLab,Jenkins以一定頻率自動執行

搭建jenkins實現自動化部署

ubunt 關閉 kcon 部署 epo java gpo add perm 1、安裝Jenkins Install Jenkins On Ubuntu wget -q -O - https://jenkins-ci.org/debian/jenkins-ci.org.ke

使用jenkins實現自動化部署的案例記錄:tomcat+svn+maven+ssh+jenkins

使用jenkins實現自動化部署的案例記錄:tomcat+svn+maven+ssh+jenkins 1.全域性配置,配置專案對應的tomcat伺服器的ssh登入地址,埠,密碼,路徑(寫/即可) 2.2-系統maven配置 3.構建一個maven風格的專案,選擇jdk版本

jenkins +gitlab 自動化程式碼秒級上線

一,配置指令碼 1 #!/bin/bash 2 #目標伺服器IP地址 3 host=$1 4 #job名稱 5 job_name=$2 6 #包名 7 name=web-$(date +%F)-$(($RANDOM+10000)) 8 #打包 9 cd /var/li

Maven、Jenkins實現自動化部署

工程例項程式碼:https://github.com/chocolateBlack/multi_env_folder_maven 利用Maven、Jenkins實現專案自動化部署,能夠按照bin、conf、lib檔案進行打包,並能夠通過Jenkins按照環境一鍵發不到伺服器上 首先通過Maven外掛

在Centos7搭建jenkins實現自動化部署springboot專案

在Centos7搭建jenkins實現自動化部署springboot專案 安裝前要把基本的環境裝好 1.jdk安裝 關於centos上的java    Jenkins不支援在centos的預設的jdk上工作。所以要刪除自己裝 查詢jdk命令 rpm -qa | grep jdk 或者 rpm

基於【SpringBoot】的微服務【Jenkins自動化部署

基於【SpringBoot】的微服務【Jenkins】自動化部署   一、關於自動化部署   關於自動化部署的優點,我就不在這裡贅述了;只要想想手工打包、上傳、部署、重啟的種種,就會有很多場景歷歷在目,相信經歷過的朋友都能體會其中的酸甜苦辣; 而一旦到了大型專案,比如所微服務化之後的

效能環境之Jenkins+Maven自動化部署SpringBoot壓測環境(Docker篇)

文章目錄 前言 關於Docker 整體設計 新建Jenkins Job 配置Job Post Steps 新建buildimage指令碼 建立Dockerfile 部署專

效能環境之Jenkins+Maven自動化部署SpringBoot壓測環境(實戰篇)

文章目錄 前言 整體設計 先決條件 Step 1:安裝sun jdk1.8環境 Step 2:安裝Maven 3.5 Step 3:安裝Jenkins Step 4:安裝Jenkins外掛 Step

Jenkins+Docker自動化部署Spring boot專案 (二)搭建docker私庫Harbor

前言 docker映象的push、pull都需要映象庫。現在不少大廠提供免費的映象庫,如docker hub,163 hub,也可以自己搭建一個私有映象庫。我用了vmware公司開源的harbor作為docker私有庫,相比docker官方提供的私有庫regi

Jenkins+docker自動化部署管理springBoot專案

* 伺服器環境支援 Jenkins服務+Git+Maven+Docker1.開啟jenkins構建一個maven專案,名字取為maven-test2.填寫jenkins配置3.立即構建    到此jenkins構建成功 我們可以拿到專案構建的最新jar包(/root/.jen

jenkins&docker自動化部署maven專案

jenkins和docker實現自動化構建部署一、應用場景開發人員開發應用,開發後需要提交svn,然後從svn拉取程式碼,進行構建,釋出到伺服器上,然後看呈現效果,這樣的工作是頻繁反覆的在進行的,浪費了大量時間,現在我們把這些工作自動化,只需要開發人員更新程式碼到svn,然後

jenkins搭建自動化部署平臺(svn+tomcat重啟)

jenkins 自動化部署和整合程式碼的平臺 可以將git svn 上的程式碼 checkout 然後重新部署伺服器,節省開發測試的效率 一、https://jenkins.io/index.html 下載jenkins包(war包) 二、下載完war包   在伺服器上最好

maven+jenkins 搭建自動化部署平臺

express ron def activate webapps mvn further plugin under jenkins 自動化部署 1、安裝JDK 1.1、上傳linux的JDK安裝包到opt目錄下,並解壓 1.2、配置jdk環境變量vim /

jenkins搭建自動化部署平臺

jenkins 自動化部署和整合程式碼的平臺 可以將Git svn 上的程式碼 checkout 然後重新部署伺服器,節省開發測試的效率 一、https://jenkins.io/index.html 下載jenkins包(war包) 二、下載完war包   在伺服器上最