日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術(shù)文章
文章詳情頁

docker+gitlab+jenkins從零搭建自動化部署

瀏覽:280日期:2024-10-26 09:29:05
目錄前言:一、安裝Docker二、Docker 安裝Jenkins1. 搜索倉庫中的jenkins鏡像2. 通過拉取jenkins鏡像到本地images中3. 啟動jenkins容器三、登陸Jenkins的初始化操作四、全局工具配置(配置環(huán)境)五、安裝Maven插件 點擊系統(tǒng)管理?插件管理六、新建任務(wù),完成自動化部署前言:

通過幾天的學(xué)習(xí)和自己的理解,整理了下Docker+Jenkins的自動部署教程,如有不足,還請多多指點,謝謝!

Docker的優(yōu)點:

Docker 讓開發(fā)者可以打包他們的應(yīng)用以及依賴包到一個可移植的容器中,然后發(fā)布到任何流行的 Linux機(jī)器上,便可以實現(xiàn)虛擬化。Docker改變了虛擬化的方式,使開發(fā)者可以直接將自己的成果放入Docker中進(jìn)行管理。方便快捷已經(jīng)是Docker的最大優(yōu)勢,過去需要用數(shù)天乃至數(shù)周的 任務(wù),在Docker容器的處理下,只需要數(shù)秒就能完成。結(jié)構(gòu):客戶端→Docker_Host(宿主機(jī))→倉庫三個概念 容器→鏡像→倉庫

為什么使用Jenkins:

傳統(tǒng)的部署項目,當(dāng)項目完成后,需要我們自己從代碼倉庫中拉取代碼到本地,完成打包,然后上傳到服務(wù)器,然后配置項目的運行環(huán)境并啟動。這樣顯然有一點的缺陷,我們在開發(fā)中存在的一些bug由于不能即時的發(fā)現(xiàn),導(dǎo)致后期修復(fù)bug而存在導(dǎo)致連鎖效應(yīng)的風(fēng)險。而且我們經(jīng)常修改代碼后,需要重新打包,然后上傳到服務(wù)器,然后運行,當(dāng)項目很多的時候,這樣的一些重復(fù)性機(jī)械操作導(dǎo)致我們有些力不從心。而我們使用Jenkins后真正的幫我們實現(xiàn)了自動化部署,當(dāng)我們代碼更新后,push到代碼倉庫中,我們只需在Jenkins的可視化界面點擊構(gòu)建項目,Jenkins便會根據(jù)我們配置的倉庫地址自動拉取代碼,自動打包,并運行,完成自動化部署。

一、安裝Docker

Docker 要求 CentOS 系統(tǒng)的內(nèi)核版本在 3.10以上 ,查看本頁面的前提條件來驗證你的CentOS 版本是否支持 Docker。

1. 通過 uname -r 命令查看你當(dāng)前的內(nèi)核版本

uname -r

2. 使用 root 權(quán)限登錄 Centos。確保 yum 包更新到最新。

yum -y update

3. 卸載舊版本(如果安裝過舊版本的話)

yum remove docker docker-common docker-selinux docker-engine

4. 安裝需要的軟件包, yum-util 提供yum-config-manager功能,另外兩個是devicemapper驅(qū)動依賴的

yum install -y yum-utils device-mapper-persistent-data lvm2

5. 設(shè)置yum源

yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

6. 可以查看所有倉庫中所有docker版本,并選擇特定版本安裝

yum list docker-ce --showduplicates | sort -r

7. 安裝docker

sudo yum install -y docker-ce #由于repo中默認(rèn)只開啟stable倉庫,故這里安裝的是最新穩(wěn)定版18.03.1

8. 啟動并加入開機(jī)啟動

systemctl start docker //啟動dockersystemctl enable docker //設(shè)置為開機(jī)啟動

9. 驗證安裝是否成功(有client和service兩部分表示docker安裝啟動都成功了)

docker version二、Docker 安裝Jenkins1. 搜索倉庫中的jenkins鏡像

docker search jenkins

jenkins 表示你要搜索的鏡像名,DESCRIPTION中包含jenkins的也會顯示出來

2. 通過拉取jenkins鏡像到本地images中

docker pull jenkins/jenkins注意這里拉取的是jenkins/jenkins版本,因為先前的jenkins版本只有2.60,導(dǎo)致安裝jenkins插件失敗拉取的時候可以指定版本,例如docker pull java:8 表示拉取的java版本為8; 不指定版本則默認(rèn)為最新版本 latest 3. 啟動jenkins容器

docker run --name myjenkins -d -p 8081:8080 -p 8085:8085 jenkins/jenkins

?name myjenkins 指定容器NAME為myjenkins-d 表示后臺運行-p 8081:8080 表示Docker Host(運行Docker的主機(jī))端口 與Docker容器內(nèi)運行的端口映射, 8081表示DockerHost的端口,8080即容器內(nèi)的端口; 外部訪問8081即可訪問到Docker容器的8080端口jenkins/jenkins 表示啟動的鏡像為jenkins/jenkins ,查看本地鏡像可以通過docker images查看

說明: 1.容器內(nèi)的端口外部無法直接訪問,因為要配置Docker Host與容器的端口映射,映射可以配置多個;由于后面需要部署項目,提前把項目的端口號-p 8085:8085配置好,不配置的也可以,后面去修端口映射文件即可。 2.其實我們也可以省略第二步pull操作,直接啟動一個容器,Docker會先去本地images中查看是否有這個鏡像,如果沒有的話會去DockerHub倉庫去下載。

三、登陸Jenkins的初始化操作

1. 訪問jenkins界面,例如我虛擬機(jī)IP是192.168.199.188 ,輸入192.168.199.188:8081,回車顯示以下界面

docker+gitlab+jenkins從零搭建自動化部署

進(jìn)入安裝Jenkins的容器內(nèi)

docker exec -it myjenkins bash// 進(jìn)入指定容器,myjenkins表示我們啟動容器時給容器指定的名稱cat /var/jenkins_home/secrets/initialAdminPassword` //查看密碼,復(fù)制密碼粘貼到文本框內(nèi)

操作圖示:

docker+gitlab+jenkins從零搭建自動化部署

2. 安裝插件,這里就安裝jenkins推薦的插件

點擊安裝推薦插件:

docker+gitlab+jenkins從零搭建自動化部署

3. 自動安裝中,需要稍等片刻,安裝完成點擊繼續(xù):

docker+gitlab+jenkins從零搭建自動化部署

4. 創(chuàng)建管理員用戶,也可以直接使用admin賬戶繼續(xù):

docker+gitlab+jenkins從零搭建自動化部署

5. 實例配置 直接保存完成:

docker+gitlab+jenkins從零搭建自動化部署

6. 開始使用Jenkins:

docker+gitlab+jenkins從零搭建自動化部署

7. 進(jìn)入Jenkins主頁:

docker+gitlab+jenkins從零搭建自動化部署

四、全局工具配置(配置環(huán)境)

點擊系統(tǒng)管理?全局工具配置

1. 配置JDK: 取消自動安裝(一般容器內(nèi)都安裝好了JDK環(huán)境), 進(jìn)入docker容器,使用echo $JAVA_HOME 獲取jdk安裝路徑,將路徑復(fù)制到JAVA_HOME文本框

docker+gitlab+jenkins從零搭建自動化部署

2. 配置Maven: 指定name,自動安裝,點擊Save即可

docker+gitlab+jenkins從零搭建自動化部署

五、安裝Maven插件 點擊系統(tǒng)管理?插件管理

docker+gitlab+jenkins從零搭建自動化部署

六、新建任務(wù),完成自動化部署

1. 回到首頁,點New 任務(wù),構(gòu)建一個Maven項目

docker+gitlab+jenkins從零搭建自動化部署

2. 點擊確定,回到首頁我們發(fā)現(xiàn)多了一個名為SpringBoot_AutoTest1的任務(wù)(上面的任務(wù)是以前的,不用理會)

docker+gitlab+jenkins從零搭建自動化部署

3. 點擊項目名SpringBoot_AutoTest1 --> 點擊配置

3.1 源碼管理(配置git倉庫地址,Jenkins會從遠(yuǎn)程倉庫拉取代碼):

docker+gitlab+jenkins從零搭建自動化部署

3.2 構(gòu)建配置(Jenkin拉取代碼后會自動執(zhí)行打包命令):

docker+gitlab+jenkins從零搭建自動化部署

3.3 配置shell腳本(Jenkins打包完成后,自動執(zhí)行shell腳本啟動項目,實現(xiàn)自動化部署),最后保存即可:

docker+gitlab+jenkins從零搭建自動化部署

附shell腳本:

#!/bin/bash# #!/bin/bash是指此腳本使用/bin/bash來解釋執(zhí)行。其中,#!是一個特殊的表示符,其后,跟著解釋此腳本的shell路徑。bash只是shell的一種,還有很多其它shell,如:sh,csh,ksh,tcsh,...# #!/bin/bash只能放在第一行,如果后面還有#!,那么只能看成是注釋。#服務(wù)名稱SERVER_NAME=SpringBoot_AutotTest#源jar路徑,mm打包完成之后,target目錄下的jar包名稱,也可選擇成為war包,war包 可移動到Tomcat的。JAR_NAME=jekins-0.0.1-SNAPSHOT#target打包生成jar包的目錄JAR_PATH=/var/jenkins_home/workspace/SpringBoot_AutotTest/target # 以具體的打包位置為準(zhǔn),可以先構(gòu)建一次項目,通過日志查看打包的目錄#打包完成之后,把iar包移動到運行jar包的目錄JAR_WORK_PATH=/var/jenkins_home/workspace/SpringBoot_AutotTest/targetecho '查詢進(jìn)程id-->$SERVER_NAME'PID=`ps -ef | grep '$SERVER_NAME' | awk ’{print $2}’`echo'得到進(jìn)程ID: $PID'echo'結(jié)束進(jìn)程'for id in $PIDdokill -9 $idecho 'killed $id' doneecho'結(jié)束進(jìn)程完成'#復(fù)制jar包到執(zhí)行目錄_echo' 復(fù)制jar包到執(zhí)行目錄:cp $JAR_PATH/$JAR_NAME.jar $JAR_WORK_PATH'cp $JAR_PATH/$JAR_NAME.jar $JAR_WORK_PATHecho'復(fù) 制jar包完成'cd $JAR_WORK_PATH#修改文件權(quán)限chmod 755 $JAR_NAME.jar#前臺啟動#java -jar $JAR_NAME.jar#后臺啟動BUILD_ID=dontKillMe nohup java -jar $JAR_NAME.jar &

到此這篇關(guān)于docker+gitlab+jenkins從零搭建自動化部署的文章就介紹到這了,更多相關(guān)docker+gitlab+jenkins自動化部署內(nèi)容請搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!

標(biāo)簽: Docker
相關(guān)文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
美国欧美日韩国产在线播放| 精品欠久久久中文字幕加勒比| 人人精品人人爱| 欧美久久天堂| 色天使综合视频| 国产精品白丝一区二区三区| 97久久亚洲| 亚洲a级精品| 视频一区在线视频| 免费人成网站在线观看欧美高清| 99久久婷婷这里只有精品| 在线日韩中文| 国产一区2区| 日韩精品视频网| 欧美在线91| 亚欧成人精品| 亚洲一二av| 久久97久久97精品免视看秋霞| 天堂久久一区| 亚洲毛片网站| 国产伊人久久| 99热国内精品| 亚洲精品系列| 亚洲欧洲午夜| 亚洲精品麻豆| 日韩av一级片| 国产精品嫩模av在线| 国产aa精品| 亚洲网站视频| 日韩午夜一区| 亚洲ww精品| 亚洲激情欧美| 国产美女撒尿一区二区| 日本不卡视频在线| 狠狠久久伊人| 日韩手机在线| 91精品国产福利在线观看麻豆| 亚洲在线观看| 国产精品66| 亚洲专区视频| 天堂√中文最新版在线| 一本色道久久精品| 精品视频91| 国产一区二区精品久| 性色av一区二区怡红| 福利视频一区| 99久久久久国产精品| 国产精品一区二区美女视频免费看| 久久亚洲精精品中文字幕| 久久亚洲风情| 影音国产精品| 免费污视频在线一区| 久久99国产精品视频| 伊人久久婷婷| 日韩av免费大片| 婷婷久久免费视频| 亚洲在线观看| 成人精品天堂一区二区三区| 国产精品久久久久9999高清| 图片区亚洲欧美小说区| 日韩精品久久久久久久软件91| 麻豆91小视频| 午夜国产一区二区| 久久国产欧美| 日本精品黄色| 视频一区在线视频| 99久久亚洲精品| 国产一区二区三区亚洲| 日本aⅴ精品一区二区三区| 亚洲精品乱码日韩| 九九在线精品| 亚洲少妇一区| 伊人久久亚洲热| 免费一级片91| 欧美日韩四区| 免费精品视频最新在线| 欧美成人久久| 久久久久久久久久久妇女| 99精品一区| 热久久免费视频| 91精品国产调教在线观看| 国产欧洲在线| 久久久久伊人| 欧美国产亚洲精品| 美腿丝袜亚洲一区| 日韩高清在线一区| 视频一区二区中文字幕| 久久亚洲视频| 日韩av黄色在线| 国产精品调教视频| 91一区二区| 伊伊综合在线| 欧美特黄一区| 香蕉久久久久久久av网站| 日韩中出av| 中文字幕成人| 国产伦久视频在线观看| 美女久久久久| 日韩国产在线观看| 国产精品1luya在线播放| 欧美国产一级| 激情国产在线| 日韩高清欧美激情| 西西人体一区二区| 久久影院午夜精品| 亚洲人成毛片在线播放女女| 国产欧美日韩| 久久国产日本精品| 亚洲ww精品| 国产精品115| 亚洲精品.com| 蜜臀国产一区| 日本高清久久| 国产精品激情| 国产无遮挡裸体免费久久| 老司机免费视频一区二区| 国产欧美自拍一区| 国产一区白浆| 国产精品色在线网站| 精品国产乱码久久久久久1区2匹| 欧美精品资源| 日韩av电影一区| 欧美日韩一二| 国产亚洲字幕| 国产综合亚洲精品一区二| 国产日产精品_国产精品毛片 | 欧美日中文字幕| 日韩av成人高清| 国产午夜久久| 国产一区三区在线播放| 亚洲精品国产嫩草在线观看| 国产精品2023| 国产精品jk白丝蜜臀av小说| 欧美专区在线| 好吊日精品视频| 福利一区视频| 亚洲v天堂v手机在线| 国产va在线视频| 国产乱子精品一区二区在线观看| 在线精品小视频| 在线成人直播| 欧美va天堂在线| 在线中文字幕播放| 国产精品美女在线观看直播| 国产精品久久久久久久久免费高清 | 欧美色图国产精品| 国产精品极品国产中出| 蜜臀91精品一区二区三区| 欧美日韩三区| 日本中文字幕不卡| 在线中文字幕播放| 亚洲黄色影院| 国产精品亚洲人成在99www| 久久中文欧美| 激情五月色综合国产精品| 国产精品美女久久久| 日韩精品中文字幕一区二区| 日韩精品视频网站| 精品国产一区二区三区av片| 国产资源在线观看入口av| 日韩专区在线视频| 精品午夜av| 中文字幕av一区二区三区四区| 国产精品高颜值在线观看| 亚洲精品福利| 蜜桃精品在线| 国产日产精品_国产精品毛片 | 国产99久久久国产精品成人免费| 久久久蜜桃一区二区人| 午夜在线精品| 欧美日韩亚洲一区三区| 美女一区网站| 亚洲不卡视频| 综合亚洲视频| 国产精品二区影院| 激情欧美一区二区三区| 99久久久久久中文字幕一区| 亚洲精华国产欧美| 欧美精品影院| 欧美午夜不卡| 国产欧美日韩精品高清二区综合区| 国产精品久久久久久久免费观看| 五月天综合网站| 天堂网av成人| 欧美一级全黄| 免费人成网站在线观看欧美高清| 成人片免费看| 日韩动漫一区| 最近国产精品视频| 亚洲一区激情| 亚洲精品a级片| 99精品视频在线| 日韩国产专区| 亚洲a一区二区三区| 在线日韩中文| 播放一区二区| 国产伦一区二区三区| 午夜电影一区| 日韩欧美中文字幕一区二区三区| 欧美午夜不卡|