服務部署與持續集成(二)

服務部署與持續集成(二)

使用Gogs

什麼是Gogs

Gogs 是一款極易搭建的自助 Git 服務。Gogs 的目標是打造一個最簡單、最快速和最輕鬆的方式搭建自助 Git 服務。使用 Go 語
言開發使得 Gogs 能夠通過獨立的二進制分發,並且支持 Go 語言支持的 所有平臺,包括 Linux、Mac OS X、Windows 以及 ARM 平臺。

git地址:https://github.com/gogs/gogs
gitee地址: https://gitee.com/Unknown/gogs

Gogs安裝與配置

安裝

方式一

  1. 在centos中安裝git
    yum install git
  2. 創建用戶kongliang並設置密碼
adduser kongliang
passwd kongliang

我這裏設置的密碼是就不說了,哈哈.

  1. 上傳壓縮包 gogs0.11.86linux_amd64.tar.gz (資源目錄中提供)到centos ,解壓。
  2. 使用命令 cd 進入到剛剛創建的目錄。
  3. 執行命令 ./gogs web

方式二(同樣需要git)

  1. 拉取鏡像:docker pull gogs/gogs
  2. 創建物理目錄:mkdir -p /var/gogs
  3. 啓動:docker run -d --name=gogs -p 10022:22 -p 10080:3000 -v /var/gogs:/data gogs/gogs

參數說明:

-p: 建立宿主機和容器的端口映射,將容器的22端口映射到宿主機的10022端口, 將容器的3000端口映射到宿主機的10080端口;

-v: 將宿主機的目錄掛載到容器中.(將數據與容器分離)

配置

假設我的centos虛擬機IP爲47.96.70.206 完成以下步驟

(1)在地址欄輸入http://47.96.70.206:10080 會進入首次運行安裝程序頁面,我們可以選擇一種數據庫作爲gogs數據的存儲,最簡單的是選擇SQLite3。如果對於規模較大的公司,可以選擇MySQL
capture_20190423224441452

capture_20190423225128218

這個配置需要注意幾個點:

倉庫根目錄: 保持默認值 `/home/git/gogs-repositories` ,因爲start.sh已經爲你創建了一個鏈接,請勿修改.
系統運行用戶: 保持默認值 git, 因爲 build.sh中已經設置了用戶 git.
域名:這裏填寫docker容器的 IP (e.g. 192.168.99.100). 但是,如果你想從不同的物理機器訪問Gogs實例,請填寫Docker主機的主機名或IP地址.我們這裏填寫47.96.70.206即可
SSH 端口號: 用來暴露Docker容器端口。例如,SSH服務器在Docker內部監聽22,但是你通過10022:22暴露它,然後請使用10022。不建議在Docker容器中內置SSH服務器
HTTP 端口號:使用你希望Gogs監聽Docker容器內部的端口. 比如, 你的 Gogs 監聽Docker內部的3000端口, 而且你通過 10080:3000暴露它, 但是這裏仍然需要使用3000作爲這個端口.
應用 URL: 域名和HTTP宿主機暴露端口的組合 (e.g. http://47.96.70.206:10080/).

在這個頁面可以添加管理員賬號,這裏就不說明了.添加完管理員後,點擊“立即安裝”,安裝後顯示主界面.
(2)創建倉庫
capture_20190423225745731

capture_20190423225814812

IDEA配置Git

步驟:
(1)在本地安裝git(Windows版本)
(2)在IDEA中選擇菜單 : File – settings , 在窗口中選擇Version Control – Git

將你的demo提交到Git

步驟:
(1)選擇菜單VCS --> Enable Version Control Integration…,選擇Git
(2)設置遠程地址: 右鍵點擊工程選擇菜單 Git --> Repository -->Remotes…

capture_20190423230052653

(3)右鍵點擊工程選擇菜單 Git --> Add

(4)右鍵點擊工程選擇菜單 Git --> Commit Directory…

(5)右鍵點擊工程選擇菜單 Git --> Repository --> Push

capture_20190423230316478

最終如上圖一樣,提交成功.

maven安裝

(1)下載maven

wget http://mirror.bit.edu.cn/apache/maven/maven-3/3.6.1/binaries/apache-maven-3.6.1-bin.tar.gz

(2)解壓maven

tar -zxvf apache-maven-3.6.1-bin.tar.gz

(3) 將apache-maven-3.6.1改名爲maven

mv apache-maven-3.6.1 maven

(4)修改配置

vim maven/conf/settings.xml

在settings.xml中添加

<localRepository>/usr/local/maven/repo</localRepository>

Jenkins安裝與啓動

(1)下載jenkins

wget https://pkg.jenkins.io/redhat/jenkins‐2.173‐1.1.noarch.rpm

(2)安裝jenkins

rpm ‐ivh jenkins‐2.173‐1.1.noarch.rpm

(3)配置jenkins

vi /etc/sysconfig/jenkins

修改用戶和端口,爲了不因爲權限出現各種問題,這裏直接使用root

JENKINS_USER="root"

JENKINS_PORT="8888"

(4)啓動服務

systemctl start jenkins

注意:如果啓動報錯Starting Jenkins bash: /usr/bin/java: No such file or directory,請添加正確的java路徑,如下所示

vim /etc/init.d/jenkins

capture_20190424224111315

在candidates的第一行添加正確的java路徑,我的是/usr/local/jdk1.8.0_201/bin/java

然後刷新一下systemctl daemon-reload

(5)訪問鏈接 http://47.96.70.206:8888,需要稍稍等待.通過cat /var/lib/jenkins/secrets/initialAdminPassword獲取密碼.

(6) 安裝插件

capture_20190424225250791

安裝推薦的插件,這個過程有點慢.

capture_20190424230027817

(7)新建用戶

實例配置

capture_20190424234449100

完成後進入主界面

capture_20190424234521494

Jenkins安裝插件

安裝Maven插件

(1)點擊左側的“系統管理”菜單 ,然後點擊

(2)選擇“可選插件”選項卡,搜索maven,在列表中選擇Maven Integration ,點擊“直接安裝”按鈕
看到如下圖時,表示已經完成

安裝Git插件

本安裝包已經安裝好了git插件

全局工具配置

選擇系統管理,全局工具配置
(1)JDK配置

設置javahome爲 /usr/local/jdk1.8.0_201

(2)Git配置

默認配置即可

(3)Maven配置
設置mavenhome爲 /usr/local/maven

持續集成

創建任務

(1)回到首頁,點擊新建按鈕 .如下圖,輸入名稱,選擇創建一個Maven項目,點擊OK

capture_20190425220023573

(2)源碼管理,選擇Git

capture_20190425220514218

(3)Build

capture_20190425221404313

命令:clean package docker:build ‐DpushImage

用於清除、打包,構建docker鏡像.最後點擊“保存”按鈕.

執行任務

返回首頁,在列表中找到我們剛纔創建的任務點擊右邊的綠色箭頭按鈕,即可執行此任務.點擊下面正在執行的任務

capture_20190425215801399

可以看到實時輸出的日誌,最終

capture_20190425141353820

這個配置需要注意幾個點:

倉庫根目錄: 保持默認值 `/home/git/gogs-repositories` ,因爲start.sh已經爲你創建了一個鏈接,請勿修改.
系統運行用戶: 保持默認值 git, 因爲 build.sh中已經設置了用戶 git.
域名:這裏填寫docker容器的 IP (e.g. 192.168.99.100). 但是,如果你想從不同的物理機器訪問Gogs實例,請填寫Docker主機的主機名或IP地址.我們這裏填寫47.96.70.206即可
SSH 端口號: 用來暴露Docker容器端口。例如,SSH服務器在Docker內部監聽22,但是你通過10022:22暴露它,然後請使用10022。不建議在Docker容器中內置SSH服務器
HTTP 端口號:使用你希望Gogs監聽Docker容器內部的端口. 比如, 你的 Gogs 監聽Docker內部的3000端口, 而且你通過 10080:3000暴露它, 但是這裏仍然需要使用3000作爲這個端口.
應用 URL: 域名和HTTP宿主機暴露端口的組合 (e.g. http://47.96.70.206:10080/).

在這個頁面可以添加管理員賬號,這裏就不說明了.添加完管理員後,點擊“立即安裝”,安裝後顯示主界面.
(2)創建倉庫
capture_20190423225745731

capture_20190423225814812

IDEA配置Git

步驟:
(1)在本地安裝git(Windows版本)
(2)在IDEA中選擇菜單 : File – settings , 在窗口中選擇Version Control – Git

將你的demo提交到Git

步驟:
(1)選擇菜單VCS --> Enable Version Control Integration…,選擇Git
(2)設置遠程地址: 右鍵點擊工程選擇菜單 Git --> Repository -->Remotes…

capture_20190423230052653

(3)右鍵點擊工程選擇菜單 Git --> Add

(4)右鍵點擊工程選擇菜單 Git --> Commit Directory…

(5)右鍵點擊工程選擇菜單 Git --> Repository --> Push

capture_20190423230316478

最終如上圖一樣,提交成功.

maven安裝

(1)下載maven

wget http://mirror.bit.edu.cn/apache/maven/maven-3/3.6.1/binaries/apache-maven-3.6.1-bin.tar.gz

(2)解壓maven

tar -zxvf apache-maven-3.6.1-bin.tar.gz

(3) 將apache-maven-3.6.1改名爲maven

mv apache-maven-3.6.1 maven

(4)修改配置

vim maven/conf/settings.xml

在settings.xml中添加

<localRepository>/usr/local/maven/repo</localRepository>

Jenkins安裝與啓動

(1)下載jenkins

wget https://pkg.jenkins.io/redhat/jenkins‐2.173‐1.1.noarch.rpm

(2)安裝jenkins

rpm ‐ivh jenkins‐2.173‐1.1.noarch.rpm

(3)配置jenkins

vi /etc/sysconfig/jenkins

修改用戶和端口,爲了不因爲權限出現各種問題,這裏直接使用root

JENKINS_USER="root"

JENKINS_PORT="8888"

(4)啓動服務

systemctl start jenkins

注意:如果啓動報錯Starting Jenkins bash: /usr/bin/java: No such file or directory,請添加正確的java路徑,如下所示

vim /etc/init.d/jenkins

capture_20190424224111315

在candidates的第一行添加正確的java路徑,我的是/usr/local/jdk1.8.0_201/bin/java

然後刷新一下systemctl daemon-reload

(5)訪問鏈接 http://47.96.70.206:8888,需要稍稍等待.通過cat /var/lib/jenkins/secrets/initialAdminPassword獲取密碼.

(6) 安裝插件

capture_20190424225250791

安裝推薦的插件,這個過程有點慢.

capture_20190424230027817

(7)新建用戶

實例配置

capture_20190424234449100

完成後進入主界面

capture_20190424234521494

Jenkins安裝插件

安裝Maven插件

(1)點擊左側的“系統管理”菜單 ,然後點擊

(2)選擇“可選插件”選項卡,搜索maven,在列表中選擇Maven Integration ,點擊“直接安裝”按鈕
看到如下圖時,表示已經完成

安裝Git插件

本安裝包已經安裝好了git插件

全局工具配置

選擇系統管理,全局工具配置
(1)JDK配置

設置javahome爲 /usr/local/jdk1.8.0_201

(2)Git配置

默認配置即可

(3)Maven配置
設置mavenhome爲 /usr/local/maven

持續集成

創建任務

(1)回到首頁,點擊新建按鈕 .如下圖,輸入名稱,選擇創建一個Maven項目,點擊OK

capture_20190425220023573

(2)源碼管理,選擇Git

capture_20190425220514218

(3)Build

capture_20190425221404313

命令:clean package docker:build ‐DpushImage

用於清除、打包,構建docker鏡像.最後點擊“保存”按鈕.

執行任務

返回首頁,在列表中找到我們剛纔創建的任務點擊右邊的綠色箭頭按鈕,即可執行此任務.點擊下面正在執行的任務

capture_20190425215801399

可以看到實時輸出的日誌,最終

capture_20190425141353820

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章