1. 程式人生 > >龍芯平臺上的容器和CI/CD實現方案

龍芯平臺上的容器和CI/CD實現方案

http://www.loongson.cn/news/company/505.html

一:簡介
        Windocker是雲巨集公司基於龍芯平臺開發的容器管理web平臺。主要功能包括:系統資源資訊dashboard;容器管理,包括啟動,刪除,暫停,重啟等;容器網路的建立,目前只支援基本的橋網路;映象管理,包括從映象倉庫中拉取映象,啟動容器,容器個引數配置;資料卷的建立,主要是建立持久化的volume;平臺資訊的展示,包括軟體版本等資訊;容器控制檯;日誌監控等。
        CI/CD 是敏捷開發的必備,簡單說就是有這樣一套工具,使得開發人員做好開發和單元測試再 push 程式碼後就不用管了,這套工具能自動地 check 程式碼的變化,自動 build, 自動做整合測試和場景測試等,自動部署到生產環境,當然,某一個環節出了問題要反饋給開發人員。這套工具大大地解脫了開發人員的工作,讓他們專注開發和迭代。

二:系統環境以及配置
A:系統硬體平臺環境

B:軟體環境
安裝loongson提供的作業系統版本。
http://ftp.loongnix.org/os/loongnix/1.0/liveinst/loongnix-20161030.iso
建議設定:
1:配置多使用者模式
#systemctl set-default multi-user.target
2:關閉防火牆以及selinux
#systemctl disable firewalld
3:安裝docker軟體包,並預設啟動該服務
#yum  -y install docker; # systemctl enable docker
C:容器管理環境
部署雲巨集公司的windocker1.0.0 容器管理環境平臺(docker容器映象)
二:基礎映象製作
目前windocker基礎容器映象(龍芯平臺)製作採用如下方式:
# cd /
# mkdir /Fedora21mininal-base
# yum --installroot=/Fedora21mininal-base groupinstall “Minimal Install”
# tar --numeric-owner -cpf Fedora21-base.tar -C Fedora21mininal-base .
# cat Fedora21-base.tar | docker import - fedoar21-minimal:v1.0.0
三:製作映象倉庫、服務映象
A:映象倉庫的製作
參考

http://www.loongnix.org官網。龍芯Fedora21 搭建docker-registry本地伺服器)考慮到loongnix的映象伺服器基礎映象軟體包太大(5G多),建議使用如上的基礎映象進行配置。
B:原始碼管理svn映象
      功能:作為原始碼管理容器的映象。本測試方案中採用svn方式
C:jenkins映象
      功能:採用的版本為2.7.4,並下載其各外掛
D:tomcat映象
      功能:自動部署jenkins產生的war包。
四:搭建CI/CD流程
A:啟動雲巨集容器管理平臺
#docker run -d -p 9000:9000 --name=windockerui  --privileged -v /var/run/docker.sock:/var/run/docker.sock winhong/windockerui:v1.0.0
訪問地址:
http://youip:9000/
 如下圖

B:在windocker平臺上,從映象倉庫中獲取映象

C:原始碼svn管理容器啟動和操作

Svn原始碼管理容器啟動完成後

svn原始碼管理容器建立成功後,進行程式碼的提交和管理
#svn co svn://yourhostip/demorepo
C:Jenkins容器啟動和操作。(jenkins版本為2.7.4)
預設的Jenkins容器映象,安裝了maven編譯環境,以及外掛
使用命令列啟動
#docker run  -i -d -t --privileged  -p 8080:8080 --name winjenkins winhong/winjenkins:v2.0.0
或者是windocker管理平臺啟動該映象容器。如同上述svn容器操作一致。
D:配置jenkins容器,以及外掛。
1:配置jdk

2:配置maven

3:Jenkins的配置檔案以及相關目錄如下。
使用docker inspect -f {{.Volumes}} contained 可以檢視jenkins的配置目錄,如:

4:jenkins產生的檔案自動觸發windocker啟動tomcat容器,部署WAR。
手動部署方式(雲巨集容器管理平臺關閉自動觸發啟動容器),
# docker run -v /opt/tomcat/webapps:/opt/tomcat/webapps -i -d -t -p 1080:8080 --name winhongtomcat winhong/wintomcat:v2.0.0
五:總結
       本文驗證了雲巨集公司的windocker容器管理平臺在龍芯伺服器上搭建CI/CD的過程,證明了windocker管理平臺能正確執行在龍芯伺服器平臺上;容器服務的管理;快速搭建CI/CD釋出整合平臺。
六:雲巨集公司簡介:
        雲巨集資訊科技股份有限公司成立於2010年,是國內最早專注於雲端計算大資料關鍵技術研究的企業,領先推出虛擬化軟體CNware,、雲作業系統WinCloud、大資料平臺ThinkData、超融合產品、創新創業雲解決方案、巨集雲+專有云、知庫等核心產品及電信、政府、金融、航天軍工、教育等行業解決方案。
        深耕行業多年,雲巨集獲得市場及行業的高度認可,獲得中國航天科工集團投資入股。2015年成功登陸新三板(股票程式碼:832135),並進入新三板創新層。
        目前公司已經擁有超過150項雲端計算相關專利及智慧財產權,承擔20餘項科技攻關專案研究,公司被評為“國家高新技術企業”、“廣東省高成長性企業”、“廣州市科技小巨人企業”等榮譽。
        雲巨集資訊堅持走國產自主的產品化道路,研發成功國內第一個擁有自主核心技術的雲作業系統,打破國外企業對雲端計算關鍵技術的壟斷,保障國家資訊保安。深入行業技術研究,雲巨集資訊致力於提供技術領先、安全可控的雲端計算、大資料解決方案,助力中國製造2025、網際網路+及創新創業。

1.png