亚洲精品中文免费|亚洲日韩中文字幕制服|久久精品亚洲免费|一本之道久久免费

      
      

            <dl id="hur0q"><div id="hur0q"></div></dl>

                Docker安裝Jenkins打包Maven項(xiàng)目為Docker鏡像并運(yùn)行「圖文教學(xué)」

                Docker安裝Jenkins打包Maven項(xiàng)目為Docker鏡像并運(yùn)行「圖文教學(xué)」

                一、前言

                Jenkins作為CI、CD的先驅(qū)者,雖然現(xiàn)在的風(fēng)頭沒有Gitlab強(qiáng)了,但是還是老當(dāng)益壯,很多中小公司還是使用比較廣泛的。最近小編經(jīng)歷了一次Jenkins發(fā)包,感覺還不錯,所以自己學(xué)習(xí)了一下。網(wǎng)上比較多的教程都是在Linux上搭建Jenkins,小編經(jīng)過一個星期的探索終于完成了在docker中進(jìn)行搭建。

                最終版就是:通過git上傳代碼—>使用Jenkins構(gòu)建自動打包—>把jar包打成docker鏡像,運(yùn)行在docker中,Windows下進(jìn)行訪問

                主要記錄一下一些踩過的坑和注意點(diǎn),讓后來人能夠跟著小編一次完成?。?/p>

                二、安裝Docker

                Linux中安裝Docker,在Docker中安裝MySQL和Redis并在Windows下連接訪問(圖文教程)_掉發(fā)的小王的博客-CSDN博客

                三、linux安裝jdk和maven

                1、下載JDK8Linux版本

                官網(wǎng)下載太慢了,小編在這里為大家下載好了:

                鏈接:https://pan.baidu.com/s/1nlfc2gwL0Ho_wWbVuJiG4g提取碼:ov24

                2、下載Maven

                maven3.8.5下載鏈接:https://dlcdn.apache.org/maven/maven-3/3.8.5/binaries/apache-maven-3.8.5-bin.tar.gz

                3、使用xftp上傳到linux上

                4、解壓

                解壓maven

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

                重命名maven

                mv apache-maven-3.8.5-bin.tar.gz apache-maven-3.8.5

                解壓jdk

                tar -zxvf jdk-8u333-linux-x64.tar.gz

                重命名jdk

                mv jdk-8u333-linux-x64.tar.gz jdk1.8

                5、配置環(huán)境變量

                進(jìn)入環(huán)境變量文件

                vim /etc/profile

                添加jdk和manven配置輸入i,進(jìn)入輸入模式

                注意自己的安裝目錄,放在文件最上面就行

                JAVA_HOME=/usr/local/java/jdk1.8CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jarPATH=$JAVA_HOME/bin:$PATHexport JAVA_HOME CLASSPATH PATHexport MAVEN_HOME=/usr/local/java/apache-maven-3.8.5export PATH=${MAVEN_HOME}/bin:${PATH}

                按下esc ,輸入:wq保存退出。

                查看是否安裝成功

                java -versionmvn -v

                6、配置Maven加速鏡像

                cd apache-maven-3.8.5/conf/vim settings.xml

                輸入i,進(jìn)入輸入模式

                alimaven aliyun maven http://maven.aliyun.com/nexus/content/groups/public/ central

                按下esc ,輸入:wq保存退出。

                四、Docker安裝Jenkins

                1.準(zhǔn)備掛載目錄

                cd home/mkdir jenkins_home

                一定要賦予修改權(quán)限,不然掛載會失敗,我們這里給最高權(quán)限。

                chmod -R 777 jenkins_home

                2. 執(zhí)行docker命令

                docker run -di –name=myjenkins -p 8080:8080 -v /home/jenkins_home:/var/jenkins_home -v /usr/local/java/jdk:/usr/local/jdk1.8 -v /usr/local/java/apache-maven-3.8.5:/usr/local/apache-maven-3.8.5 -v $(which docker):/usr/bin/docker -v /var/run/docker.sock:/var/run/docker.sock jenkins/jenkins:lts

                -v /home/jenkins_home:/var/jenkins_home:是對容器內(nèi)存儲Jenkins的一些配置信息的文件夾-v /usr/local/java/jdk:/usr/local/jdk1.8:是把linux下的jdk和容器內(nèi)的關(guān)聯(lián)(配置Jenkins時(shí)使用)-v /usr/local/java/apache-maven-3.8.5:/usr/local/apache-maven-3.8.5:是把linux下的maven和容器內(nèi)的關(guān)聯(lián)(配置Jenkins時(shí)使用)

                -v $(which docker):/usr/bin/docker -v /var/run/docker.sock:/var/run/docker.sock:是可以在Jenkins容器里使用我們Linux下的docker。

                五、配置Jenkins

                1. 進(jìn)入Jenkins

                輸入:http://192.168.84.133:8080/(ip+端口號)

                2. 獲取密碼

                docker logs 容器id

                3. 安裝插件

                4. 創(chuàng)建用戶

                5. 保存配置地址

                6. 配置插件鏡像

                輸入:https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json

                點(diǎn)擊提交

                7. 安裝ssh插件

                安裝完成重啟一下Jenkins

                8. 添加ssh登錄賬號憑據(jù)

                點(diǎn)擊系統(tǒng)管理,找到下圖點(diǎn)擊

                9. 配置全局ssh

                點(diǎn)擊系統(tǒng)管理,找到系統(tǒng)配置

                點(diǎn)擊新增:

                點(diǎn)擊保存:

                10. 配置jdk和maven

                點(diǎn)擊系統(tǒng)管理,找到全局工具配置:

                點(diǎn)擊保存

                六、準(zhǔn)備Springboot項(xiàng)目到git

                1. 核心代碼

                我們看到只是一個請求打印,我們最后訪問有docker成功,代表我們構(gòu)建發(fā)包成功!

                2. pom內(nèi)容

                org.springframework.boot spring-boot-maven-plugin repackage true

                3. yml文件

                這里只指定了端口號

                server.port=8081

                4. Dockerfile

                和pom文件同級

                FROM java:8COPY *.jar /app.jarCMD [“–server.port=8080”]EXPOSE 8080ENTRYPOINT [“java”, “-jar”, “/app.jar”]

                5. 上傳git倉庫

                七、使用Jenkins部署項(xiàng)目

                1. 新建任務(wù)

                2. 添加git憑據(jù)

                選擇剛剛添加的憑據(jù)報(bào)錯信息消失

                3. 添加maven構(gòu)建

                4. 增加構(gòu)建執(zhí)行shell

                shell腳本:

                #!/bin/bash# 服務(wù)名稱SERVER_NAME=jenkins# 源jar名稱,mvn打包之后,target目錄下的jar包名稱JAR_NAME=demo-0.0.1-SNAPSHOT# jenkins下的目錄JENKINS_HOME=/var/jenkins_home/workspace/jenkins# 等待三秒echo sleep 3ssleep 1echo sleep 2ssleep 1echo sleep 1ssleep 1echo “結(jié)束進(jìn)程完成”cd $JENKINS_HOME/targetcp $JENKINS_HOME/Dockerfile $JENKINS_HOME/target# 修改文件權(quán)限chmod 755 $JAR_NAME.jarecho “看看docker能不能用”docker -vecho “停止容器”# 停止容器docker stop springbootecho “刪除容器”# 刪除容器docker rm springbootecho “刪除鏡像”# 刪除鏡像docker rmi springbootecho “打包鏡像”# 打包鏡像docker build -t springboot .echo “運(yùn)行鏡像”# 運(yùn)行鏡像docker run -d -p 8081:8081 –name springboot springboot

                5. 立即構(gòu)建

                6. 控制臺輸出報(bào)錯

                我們看到打包成功了,就是在使用docker命令的時(shí)候出現(xiàn)權(quán)限問題,這是我們要給docker.sock權(quán)限就可以解決了??!

                報(bào)錯信息:

                Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Post “http://%2Fvar%2Frun%2Fdocker.sock/v1.24/containers/springboot/stop”: dial unix /var/run/docker.sock: connect: permission denied

                解決方案:

                chmod a+rw /var/run/docker.sock

                7.在次構(gòu)建

                我們發(fā)現(xiàn)沒有報(bào)錯,也看到了容器的id

                8. 查詢docker鏡像是否啟動

                docker images docker ps

                9. Win10進(jìn)行訪問測試

                輸入地址:http://192.168.84.133:8081/test/docker

                七、總結(jié)

                小編斷斷續(xù)續(xù)研究了一星期,太不容易了,中間也是遇到很多坑,只要是跟著小編走下去的基本都可以跑出來的!看到這里還不給小編一鍵三連起來??!謝謝大家了哦~


                有緣人才可以看得到的哦?。。?/p>

                小王博客站

                鄭重聲明:本文內(nèi)容及圖片均整理自互聯(lián)網(wǎng),不代表本站立場,版權(quán)歸原作者所有,如有侵權(quán)請聯(lián)系管理員(admin#wlmqw.com)刪除。
                用戶投稿
                上一篇 2022年6月13日 06:01
                下一篇 2022年6月13日 06:01

                相關(guān)推薦

                聯(lián)系我們

                聯(lián)系郵箱:admin#wlmqw.com
                工作時(shí)間:周一至周五,10:30-18:30,節(jié)假日休息