最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

使用docker搭建jenkins自動化工具的實(shí)現(xiàn)

 更新時間:2022年04月11日 10:42:03   作者:小畢超  
大家在工作中,應(yīng)該都有使用過jenkins 自動化打包或發(fā)布,本文主要介紹了使用docker搭建jenkins自動化工具的實(shí)現(xiàn),具有一定的參考價值,感興趣的小伙伴們可以參考一下

一、jenkins

Jenkins是一個開源軟件項(xiàng)目,是基于Java開發(fā)的一種持續(xù)集成工具,用于監(jiān)控持續(xù)重復(fù)的工作,旨在提供一個開放易用的軟件平臺,使軟件項(xiàng)目可以進(jìn)行持續(xù)集成。

大家在工作中,應(yīng)該都有使用過jenkins 自動化打包或發(fā)布,就比如我經(jīng)常用到的就是將開發(fā)的項(xiàng)目自動化打包成docker鏡像,實(shí)現(xiàn)一鍵打包,大大減少了我們的工作量,下面就一起學(xué)習(xí)下,jenkins 的安裝與使用。

二、基于docker 搭建 jenkins

本篇使用dockerdocker-composejenkins進(jìn)行搭建,所以在安裝前要保證服務(wù)器上已經(jīng)安裝了dockerdocker-compose。如果是內(nèi)網(wǎng)服務(wù)器,可以先關(guān)閉服務(wù)的防火墻,外網(wǎng)的話下面注意開放相應(yīng)端口。

由于我們要在jenkins容器內(nèi)部使用外部的docker命令,需要依賴libltdl.so.7包,所以首先安裝這個 library:

yum install libltdl.so.7

安裝完之后,我的位置在/usr/lib64/libltdl.so.7,最好確認(rèn)下你的是不是這個位置。

下面創(chuàng)建jenkin數(shù)據(jù)存儲的地址:

mkdir /jenkins/jenkins_home

編寫docker-compose-jenkins.yaml 文件,寫入一下內(nèi)容:

version: '3.1'
services:
  jenkins:
    image: jenkins/jenkins:lts
    volumes:
      - /jenkins/jenkins_home/:/var/jenkins_home
      - /var/run/docker.sock:/var/run/docker.sock
      - /usr/bin/docker:/usr/bin/docker
      - /usr/lib64/libltdl.so.7:/usr/lib/x86_64-linux-gnu/libltdl.so.7
    ports:
      - "8010:8080"
    expose:
      - "8080"
      - "50000"
    privileged: true
    user: root
    restart: always
    container_name: jenkins
    environment:
      JAVA_OPTS: '-Djava.util.logging.config.file=/var/jenkins_home/log.properties'

要在 CentOS7 的容器中使用宿主機(jī)上的命令,需要在容器中使用 root 用戶,也可以以 jenkins 用戶運(yùn)行,但是需要把容器內(nèi)的 jenkins 用戶加入到 docker 組中,通過 grep docker /etc/group 命令查看 docker 組的 GID。

所以 user: root 表示在容器中以 root 用戶運(yùn)行。
/var/run/docker.sock:/var/run/docker.sock 表示 Docker 守護(hù)進(jìn)程監(jiān)聽的 Unix 套接字。要在 Jenkins 容器中使用 docker 命令,則此選項(xiàng)是必需的。

下面啟動jenkins鏡像:

docker-compose -f docker-compose-jenkins.yaml up -d

在這里插入圖片描述

下面就可以在瀏覽器訪問了:http://192.168.216.140:8010

在這里插入圖片描述

第一次使用 jenkins,需要解鎖,密鑰上面已經(jīng)提示在什么位置了,由于我們將根目錄已經(jīng)映射到本機(jī)的/jenkins/jenkins_home/下,所以查看密鑰:

cat /jenkins/jenkins_home/secrets/initialAdminPassword

在這里插入圖片描述

將上面密鑰填入,繼續(xù)可以看到新手入門,如果你不了解,就先下載推薦的插件,如果了解件下載針對性的插件,這里先安裝推薦的插件:

在這里插入圖片描述

在這里插入圖片描述

等待一會下載完成后,需要創(chuàng)建用戶,也可以使用admin用戶,這里創(chuàng)建一個新用戶user,然后繼續(xù):

在這里插入圖片描述

下面一般不修改,直接繼續(xù),然后開始使用,就來到j(luò)enkins的主頁面了:

在這里插入圖片描述

在這里插入圖片描述

到這里jenkins就算安裝好了,如果要構(gòu)建項(xiàng)目的話,還需要安裝maven插件,后面就可以構(gòu)建maven項(xiàng)目了:

在這里插入圖片描述

搜索Maven

在這里插入圖片描述

然后等待一會下載完成。還需進(jìn)行Maven的依賴下載:

在這里插入圖片描述

直接新增一個maven,可以選擇在線安裝,也可以指定某個路徑,這里直接從Apache進(jìn)行安裝:

在這里插入圖片描述

下面就可以使用jenkins 實(shí)現(xiàn)SpringBoot項(xiàng)目的docker環(huán)境自動化打包和發(fā)布。

三、jenkins 自動發(fā)布 SpringBoot 鏡像

首先我們需要創(chuàng)建一個Git倉庫,也可以使用SVN,這里我在Gitee上新建了一個倉庫,并放入了一個基本的SpringBoot項(xiàng)目:

在這里插入圖片描述

Dockerfile 文件的內(nèi)容:

FROM openjdk:8-jdk
COPY target/jenkins-demo-0.0.1-SNAPSHOT.jar /home/app/jenkins-demo.jar
ENV LANG=UTF-8
ENV TZ=Asia/Shanghai
WORKDIR  /home/app/
CMD java -jar /home/app/jenkins-demo.jar

測試接口:

在這里插入圖片描述

下面在jenkin中創(chuàng)建項(xiàng)目:

在這里插入圖片描述

由于上面下載了Maven的插件,這里我們可以直接選擇Maven項(xiàng)目:

在這里插入圖片描述

在General中,填寫項(xiàng)目的描述,并使用參數(shù)化構(gòu)建 ,將每次打包的鏡像版本,傳遞進(jìn)來:

在這里插入圖片描述

參數(shù)命名為version,后面打包docker鏡像時會使用到:

在這里插入圖片描述

下面在源碼管理中我們選擇Git:

在這里插入圖片描述

點(diǎn)擊添加,輸入git的用戶名密碼,ID可以為空,系統(tǒng)會自動生成一個唯一ID:

在這里插入圖片描述

選擇上面添加的用戶和密碼:

在這里插入圖片描述

這里我就一個master分枝,這里填寫master

在這里插入圖片描述

在Build的地方,我們可以寫上打包的命令,這里可以省略mvn

clean package

在這里插入圖片描述

Post Steps中我們選擇執(zhí)行Shell的方式,可以寫打包docker鏡像的指令:

#!/bin/sh
docker stop jenkins-demo
docker rm jenkins-demo
docker build -t jenkins-demo:${version}  .
docker run -itd --name jenkins-demo  -p 8088:8080 jenkins-demo:${version}

在這里插入圖片描述

點(diǎn)擊下面的保存,再次回到主頁,就會看到剛才添加的項(xiàng)目了:

在這里插入圖片描述

下面構(gòu)建該項(xiàng)目:

在這里插入圖片描述

需要輸入版本:

在這里插入圖片描述

在左下角可以看到執(zhí)行進(jìn)度:

在這里插入圖片描述

點(diǎn)進(jìn)入也可以看到控制臺的打?。?/p>

在這里插入圖片描述

第一次比較慢,等待一會就可以發(fā)現(xiàn),SpringBoot項(xiàng)目就已經(jīng)啟動在docker中啟動起來了。

在這里插入圖片描述

查看docker中的進(jìn)程:

在這里插入圖片描述

已經(jīng)有我們打包的SpringBoot項(xiàng)目了,接口也可以正常訪問:

在這里插入圖片描述

修改下程序,重新發(fā)布:

在這里插入圖片描述

重新構(gòu)建:

在這里插入圖片描述

構(gòu)建完成后,再次訪問測試接口:

在這里插入圖片描述

到此這篇關(guān)于使用docker搭建jenkins自動化工具的實(shí)現(xiàn)的文章就介紹到這了,更多相關(guān)docker搭建jenkins自動化 內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Docker數(shù)據(jù)卷和容器編排的使用

    Docker數(shù)據(jù)卷和容器編排的使用

    這篇文章主要介紹了Docker數(shù)據(jù)卷和容器編排的使用,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-07-07
  • Docker?搭建?RabbitMQ的詳細(xì)過程

    Docker?搭建?RabbitMQ的詳細(xì)過程

    在現(xiàn)代微服務(wù)與分布式架構(gòu)中,RabbitMQ?是一款成熟的開源消息隊(duì)列中間件,提供了可靠的消息投遞、豐富的路由策略和管理插件,本文將詳細(xì)介紹Docker?搭建?RabbitMQ的過程,感興趣的朋友一起看看吧
    2025-04-04
  • 一文帶你徹底搞懂Docker中的cgroup的具體使用

    一文帶你徹底搞懂Docker中的cgroup的具體使用

    本文主要介紹了Docker中的cgroup的具體使用,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-11-11
  • 如何使用Docker部署Go Web應(yīng)用的實(shí)現(xiàn)

    如何使用Docker部署Go Web應(yīng)用的實(shí)現(xiàn)

    這篇文章主要介紹了如何使用Docker部署Go Web應(yīng)用的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-11-11
  • dockerDesktop使用教程

    dockerDesktop使用教程

    本文給大家分享docker Desktop使用,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友參考下吧
    2023-11-11
  • Docker搭建Portainer可視化界面步驟詳解

    Docker搭建Portainer可視化界面步驟詳解

    在本篇文章里小編給大家分享的是一篇關(guān)于Docker搭建Portainer可視化界面的實(shí)例操作方法,需要的朋友們參考下。
    2019-10-10
  • Docker容器互訪的三種方法

    Docker容器互訪的三種方法

    這篇文章主要介紹了Docker容器互訪的三種方法,幫助大家更好的理解和使用docker容器,感興趣的朋友可以了解下。
    2020-09-09
  • docker overlay2 文件夾比較大處理步驟

    docker overlay2 文件夾比較大處理步驟

    本文介紹了Docker默認(rèn)存儲驅(qū)動overlay2文件夾變得大時的清理方法,包括清理未使用的Docker對象、刪除未使用的容器和鏡像、清理日志文件和數(shù)據(jù)卷等步驟,通過這些步驟,可以有效釋放磁盤空間并避免存儲空間不足的問題,感興趣的朋友跟隨小編一起看看吧
    2025-03-03
  • SpringCloud基于Docker和Docker-Compose的項(xiàng)目部署過程

    SpringCloud基于Docker和Docker-Compose的項(xiàng)目部署過程

    本文介紹了如何卸載舊版本Docker、更新系統(tǒng)、安裝Docker及其依賴,并設(shè)置國內(nèi)鏡像源以加快下載速度,詳細(xì)說明了如何安裝Docker Compose、配置鏡像加速器,并展示了如何使用Docker Compose部署SpringCloud項(xiàng)目,提供了更新和重啟容器的方法
    2024-10-10
  • Docker Desktop搭建RocketMQ的圖文步驟

    Docker Desktop搭建RocketMQ的圖文步驟

    RocketMQ支持發(fā)布/訂閱模式和點(diǎn)對點(diǎn)模式,可以根據(jù)業(yè)務(wù)需求選擇合適的消息模式,本文主要介紹了Docker Desktop搭建RocketMQ的圖文步驟,感興趣的可以了解一下
    2024-02-02

最新評論

塘沽区| 那坡县| 蓬溪县| 竹溪县| 浦东新区| 普陀区| 武山县| 福泉市| 沅陵县| 香河县| 丰顺县| 鄂托克前旗| 定襄县| 建宁县| 焉耆| 大渡口区| 虹口区| 福州市| 南江县| 南华县| 辽阳县| 阜南县| 洪雅县| 双柏县| 札达县| 榆树市| 宝坻区| 焉耆| 义乌市| 屏山县| 夹江县| 南召县| 前郭尔| 桐城市| 鄂托克旗| 镶黄旗| 商洛市| 松潘县| 绩溪县| 灌云县| 阿尔山市|