Jenkins+docker+maven+git自动化构建与部署
2019獨角獸企業(yè)重金招聘Python工程師標準>>>
公司項目需要,本地提供代碼管理+git+jenkins+maven環(huán)境,通過SSH發(fā)布到docker服務器進行部署
持續(xù)集成的工具有很多,例如Jenkins、Strider、Drone.io等。我自身接觸Jenkins比較多,在這里我就選選擇Jenkins、TFS、Docker來實現(xiàn)簡單的實現(xiàn)持續(xù)集成。
TFS持續(xù)集成的就是跟蹤代碼變更,合并,能夠自定義腳本,任務進行自動化測試,發(fā)版,部署,有點像docker的味道。在這個代理服務器分布式中tfsserver起著能夠隨時拿去最新代碼能夠統(tǒng)一執(zhí)行任務的角色,所不同的是代理服務器僅僅是執(zhí)行具體的編譯,而tfs起著統(tǒng)一管理,調度,安排的作用。
Docker則是一個開源的應用容器引擎,讓開發(fā)者可以打包他們的應用以及依賴包到一個可移植的容器中。
docker安裝使用篇
一.先決條件
首選需要一個64位操作系統(tǒng)和3.10或者更版本的內核。
查看當前內核版本:
?
| 1 2 | $ uname -r 3.10.0-229.el7.x86_64 |
二.yum安裝Docker Engine
安裝Docker Engine有兩種方式,我們先選擇yum安裝,并且Docker官方提供了yum源。
1.使用普通用戶sudo或者root登錄到你的服務器,更新yum,確保你的軟件都是最新的
?
| 1 | $ yum update |
2.添加Docker的yum源
?
| 1 2 3 4 5 6 7 8 | $ sudo tee /etc/yum.repos.d/docker.repo <<-'EOF' [dockerrepo] name=Docker Repository baseurl=https://yum.dockerproject.org/repo/main/centos/7/ enabled=1 gpgcheck=1 gpgkey=https://yum.dockerproject.org/gpg EOF |
3.安裝Docker軟件包
?
| 1 | $ yum install docker-engine |
4.設置Docker服務開機自啟
?
| 1 | $ systemctl enable docker.service |
5.啟動Docker服務
?
| 1 | $ systemctl start docker |
6.驗證Docker是否安裝成功
?
| 1 | $ docker run --rm hello-world |
至此:docker最新版已經安裝完成,下面我們進行生產環(huán)境鏡像的創(chuàng)建,使用dockerfile
dockerfile(白話其實就是一個腳本,把一個純鏡像按照所需應用或者環(huán)境每個操作集成到一個文件執(zhí)行安裝的過程,類似于linux的shell.)
走世界自由行環(huán)境需求(tomcat+jdk)
#以下是我們采用純凈centos,之后安裝所需環(huán)境依賴的應用(tomcat+jdk)
FROM centos
#以下是我們聲明的維護人或者叫做作者
?
MAINTAINER locutus "zoushijie"
?
# OS環(huán)境配置
RUN yum install -y wget
?
# 安裝JDK
RUN mkdir /opt/jdk
RUN wget -P /opt/jdk/ http://zsj-linux.oss-cn-hangzhou.aliyuncs.com/yunwei/jdk-8u162-linux-x64.tar.gz
RUN tar -zxvf /opt/jdk/jdk-8u162-linux-x64.tar.gz -C /opt/jdk && rm -rf /opt/jdk/jdk-8u162-linux-x64.tar.gz
?
# 安裝tomcat
RUN mkdir /opt/tomcat
RUN wget -P /opt/tomcat http://45.77.240.64/apache-tomcat-8.0.47.tar.gz
RUN tar -zxvf /opt/tomcat/apache-tomcat-8.0.47.tar.gz -C /opt/tomcat && rm -rf /opt/tomcat/apache-tomcat-8.0.47.tar.gz
?
#設置環(huán)境變量
ENV JAVA_HOME /opt/jdk/jdk1.8.0_162
ENV CATALINA_HOME /opt/tomcat/apache-tomcat-8.0.47
ENV PATH $PATH:$JAVA_HOME/bin
ENV CLASSPATH .:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
#打包項目并拷貝到tomcat webapps目錄
RUN mkdir /opt/webapp
ADD ./ /opt/webapp
RUN cd /opt/webapp && cp /opt/webapp/war/eureka-server.war /opt/tomcat/apache-tomcat-8.0.47/webapps/
?
#開啟內部服務端口
EXPOSE 8080
?
#啟動tomcat服務器
CMD ["./opt/tomcat/apache-tomcat-8.0.47/bin/catalina.sh","run"] && tail -f /opt/tomcat/apache-tomcat-8.0.47/logs/catalina.out
此為沒有修改默認目錄容器,下面我們進行修改默認訪問目錄操作
查看正在運行的容器:docker ps -l
之后進入容器:docker exec -it dd46f73e366e /bin/bash
進入tomcat修改server.xml 文件,添加對應微服務名稱:<Context path="" docBase="微服務名稱" debug="0" reloadable="true" />
之后要保證容器運行的狀態(tài)下退出交互界面:Ctrl+p+q,我們可以看到容器仍在運行,下面我們保存一下剛才修改的容器,并以微服務命名
docker commit dd4 eureka-server
查看新生成的鏡像:出現(xiàn)了名為eureka-server的鏡像
刪除本地不用的鏡像。docker rmi -f <鏡像id>,首先先停止運行中的容器,docker stop <鏡像id>,停止運行中的容器,要從docker ps 里查看id.不是在docker images 里查看。
?
jenkins在windows下的安裝
安裝JDK前期準備:
1:下載安裝JDK?
JDK官方下載網(wǎng)站:http://www.oracle.com/technetwork/java/archive-139210.html?下載多少版本自己決定。?
2:配置JDK的環(huán)境變量?
在安裝完JDK后配置一下環(huán)境變量。在我們日后配置jenkins時也會用到。?
(1)到高級系統(tǒng)設置中配置環(huán)境變量:?
?
(2)創(chuàng)建變量JAVA_HOME,如下圖:?
?
(3)創(chuàng)建后添加自己安裝的JDK下的bin目錄和jre/目錄到PATH中,如下圖:?
?
(4)打開CMD,輸入javac命令,看是否識別,若給參數(shù)提示說明配置成功,如下圖:?
下面開始安裝jenkins:
1:去官網(wǎng)下載jenkins.war包。?
官網(wǎng)地址:http://Jenkins-ci.org/?
官網(wǎng)鏡像地址:http://mirrors.jenkins-ci.org/war-stable/?(在里面可以選擇任意版本的war包,lastest為最新的,推薦下載!)
2:下載完后在c盤根目錄建一個jenkins文件夾,并把jenkins.war文件拷進去。?
3:打開cmd,進入c盤下的jenkins目錄,然后運行命令:java -jar jenkins.war?
這樣jenkins就安裝成功了。然后我們打開一個瀏覽器,輸入localhost:8080 就會彈出jenkins的web界面。如下圖:?
至此jenkins在windows下的安裝就完成了!!
?
轉載于:https://my.oschina.net/u/3659224/blog/1636041
總結
以上是生活随笔為你收集整理的Jenkins+docker+maven+git自动化构建与部署的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 作用域和闭包的通俗理解
- 下一篇: Element el-upload上传组