一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

Jenkins+Docker實(shí)現(xiàn)一鍵自動(dòng)化部署項(xiàng)目!

馬哥Linux運(yùn)維 ? 來(lái)源:CSDN-這把躺贏 ? 2023-01-06 15:36 ? 次閱讀

本文章實(shí)現(xiàn)最簡(jiǎn)單全面的Jenkins+docker+springboot 一鍵自動(dòng)部署項(xiàng)目,步驟齊全,少走坑路。

環(huán)境:centos7+git(gitee)

簡(jiǎn)述實(shí)現(xiàn)步驟:在docker安裝jenkins,配置jenkins基本信息,利用Dockerfile和shell腳本實(shí)現(xiàn)項(xiàng)目自動(dòng)拉取打包并運(yùn)行。

安裝docker

docker 安裝社區(qū)版本CE

確保 yum 包更新到最新。

yumupdate

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

yumremovedockerdocker-commondocker-selinuxdocker-engine

安裝需要的軟件包

yuminstall-yyum-utilsdevice-mapper-persistent-datalvm2

設(shè)置yum源

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

安裝docker

yuminstalldocker-ce#由于repo中默認(rèn)只開啟stable倉(cāng)庫(kù),故這里安裝的是最新穩(wěn)定版17.12.0
yuminstall<自己的版本>#例如:sudo yum install docker-ce-17.12.0.ce

啟動(dòng)和開機(jī)啟動(dòng)

systemctlstartdocker
systemctlenabledocker

驗(yàn)證安裝是否成功

dockerversion

安裝Jenkins

安裝J enkins

docker 安裝一切都是那么簡(jiǎn)單,注意檢查8080是否已經(jīng)占用!如果占用修改端口

dockerrun--namejenkins-uroot--rm-d-p8080:8080-p50000:50000-v/var/jenkins_home:/var/jenkins_home-v/var/run/docker.sock:/var/run/docker.sockjenkinsci/blueocean

如果沒改端口號(hào)的話

安裝完成后訪問地址-> http://{部署Jenkins所在服務(wù)IP}:8080

此處會(huì)有幾分鐘的等待時(shí)間。

初始化 Jenkins

詳情見官網(wǎng)教程->https://www.jenkins.io

解鎖 Jenkins

進(jìn)入Jenkins容器:docker exec -it {Jenkins容器名} bash

例如 docker exec -it jenkins bash

查看密碼:cat /var/lib/jenkins/secrets/initialAdminPassword

復(fù)制密碼到輸入框里面8cb4aee0-8d2b-11ed-bfe3-dac502259ad0.png

安裝插件

選擇第一個(gè):安裝推薦的插件
8cbd4ee2-8d2b-11ed-bfe3-dac502259ad0.png

創(chuàng)建管理員用戶

此賬戶一定要記住哦

系統(tǒng)配置

安裝需要插件

進(jìn)入【首頁(yè)】–【系統(tǒng)管理】–【插件管理】–【可選插件】

搜索以下需要安裝的插件,點(diǎn)擊安裝即可。
8cc48040-8d2b-11ed-bfe3-dac502259ad0.png

安裝Maven Integration

安裝Publish Over SSH(如果不需要遠(yuǎn)程推送,不用安裝)

如果使用Gitee 碼云,安裝插件Gitee(Git自帶不用安裝)

配置Maven

進(jìn)入【首頁(yè)】–【系統(tǒng)管理】–【全局配置】,拉到最下面maven–maven安裝

8ccf96ec-8d2b-11ed-bfe3-dac502259ad0.png

創(chuàng)建任務(wù)

新建任務(wù)

點(diǎn)擊【新建任務(wù)】,輸入任務(wù)名稱,點(diǎn)擊構(gòu)建一個(gè)自由風(fēng)格的軟件項(xiàng)目8cd5af8c-8d2b-11ed-bfe3-dac502259ad0.png

源碼管理

點(diǎn)擊【源碼管理】–【Git】,輸入倉(cāng)庫(kù)地址,添加憑證,選擇好憑證即可。8cdbb468-8d2b-11ed-bfe3-dac502259ad0.png8ce2f2be-8d2b-11ed-bfe3-dac502259ad0.png

構(gòu)建觸發(fā)器

點(diǎn)擊【構(gòu)建觸發(fā)器】–【構(gòu)建】–【增加構(gòu)建步驟】–【調(diào)用頂層Maven目標(biāo)】–【填寫配置】–【保存】

8cec8b30-8d2b-11ed-bfe3-dac502259ad0.png

此處命令只是install,看是否能生成jar包

cleaninstall-Dmaven.test.skip=true
8cf62e2e-8d2b-11ed-bfe3-dac502259ad0.png

保存

點(diǎn)擊【保存】按鈕即可

測(cè)試

該功能測(cè)試是否能正常打包

構(gòu)建

點(diǎn)擊構(gòu)建按鈕
8cfd73aa-8d2b-11ed-bfe3-dac502259ad0.png

查看日志

點(diǎn)擊正在構(gòu)建的任務(wù),或者點(diǎn)擊任務(wù)名稱,進(jìn)入詳情頁(yè)面,查看控制臺(tái)輸出,看是否能成功打成jar包。

該處日志第一次可能下載依賴jar包失敗,再次點(diǎn)擊構(gòu)建即可成功。
8d07528a-8d2b-11ed-bfe3-dac502259ad0.png8d0fb182-8d2b-11ed-bfe3-dac502259ad0.png

查看項(xiàng)目位置

cd/var/jenkins_home/workspace

ll命令即可查看是否存在

運(yùn)行項(xiàng)目

因?yàn)槲覀冺?xiàng)目和jenkins在同一臺(tái)服務(wù)器,所以我們用shell腳本運(yùn)行項(xiàng)目,原理既是通過dockerfile 打包鏡像,然后docker運(yùn)行即可。

Dockerfile

在springboot項(xiàng)目根目錄新建一個(gè)名為Dockerfile的文件,注意沒有后綴名,其內(nèi)容如下:(大致就是使用jdk8,把jar包添加到docker然后運(yùn)行prd配置文件)

FROMjdk:8
VOLUME/tmp
ADDtarget/zx-order-0.0.1-SNAPSHOT.jarapp.jar
EXPOSE8888
ENTRYPOINT["Bash","-DBash.security.egd=file:/dev/./urandom","-jar","/app.jar","--spring.profiles.active=prd"]

修改jenkins任務(wù)配置

8d17abb2-8d2b-11ed-bfe3-dac502259ad0.png

配置如下:

8d1f614a-8d2b-11ed-bfe3-dac502259ad0.png

-t:指定新鏡像名
.:表示Dockfile在當(dāng)前路徑
cd/var/jenkins_home/workspace/zx-order-api
dockerstopzx-order||true
dockerrmzx-order||true
dockerrmizx-order||true
dockerbuild-tzx-order.
dockerrun-d-p8888:8888--namezx-orderzx-order:latest

備注:

我上圖用了docker logs -f 是為了方便看日志,真實(shí)不要用,因?yàn)闀?huì)一直等待日志,構(gòu)建任務(wù)會(huì)失敗

加|| true 是如果命令執(zhí)行失敗也會(huì)繼續(xù)實(shí)行,為了防止第一次沒有該鏡像報(bào)錯(cuò)

保存

點(diǎn)擊保存即可

構(gòu)建

8d278596-8d2b-11ed-bfe3-dac502259ad0.png

查看jenkins控制臺(tái)輸出,輸出如下,證明成功!

驗(yàn)證

dockerps查看是否有自己的容器
dockerlogs自己的容器名查看日志是否正確

瀏覽器訪問項(xiàng)目試一試

審核編輯:湯梓紅

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 自動(dòng)化
    +關(guān)注

    關(guān)注

    29

    文章

    5725

    瀏覽量

    81230
  • Docker
    +關(guān)注

    關(guān)注

    0

    文章

    503

    瀏覽量

    12539
  • jenkins
    +關(guān)注

    關(guān)注

    0

    文章

    32

    瀏覽量

    5268

原文標(biāo)題:Jenkins+Docker 實(shí)現(xiàn)一鍵自動(dòng)化部署項(xiàng)目!

文章出處:【微信號(hào):magedu-Linux,微信公眾號(hào):馬哥Linux運(yùn)維】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    如何在持續(xù)集成開發(fā)流程中使用JenkinsDocker?

    工作提供了致和自動(dòng)化的基礎(chǔ)。 我們將研究指南中的以下主題: ?在自定義Docker容器中的虛擬Arm Cortex-M4系統(tǒng)上運(yùn)行“你好世界”應(yīng)用程序。 ?實(shí)施測(cè)試以驗(yàn)證應(yīng)用程序的完成情況。 ?配置
    發(fā)表于 08-02 10:50

    Jenkins管理的持續(xù)集成境引入Docker來(lái)優(yōu)化資源配置

    Jenkins是被廣泛應(yīng)用的持續(xù)集成、自動(dòng)化測(cè)試、持續(xù)部署的框架,甚至有些項(xiàng)目組順便將其用來(lái)做流程管理的工具。根據(jù)任務(wù)的多寡,Jenkins
    發(fā)表于 09-26 11:42 ?0次下載
    在<b class='flag-5'>Jenkins</b>管理的持續(xù)集成境引入<b class='flag-5'>Docker</b>來(lái)優(yōu)化資源配置

    jenkins自動(dòng)化部署

    本文詳細(xì)介紹Jenkins的簡(jiǎn)單使用—jenkins自動(dòng)化部署。
    的頭像 發(fā)表于 02-06 11:27 ?4900次閱讀
    <b class='flag-5'>jenkins</b><b class='flag-5'>自動(dòng)化</b><b class='flag-5'>部署</b>

    docker compose一鍵打包部署項(xiàng)目的實(shí)踐

    【導(dǎo)讀】本文介紹了 docker compose 一鍵打包部署項(xiàng)目的實(shí)踐。
    的頭像 發(fā)表于 08-30 11:03 ?1770次閱讀

    Jenkins+docker+springboot一鍵自動(dòng)部署項(xiàng)目

    本文章實(shí)現(xiàn)最簡(jiǎn)單全面的Jenkins+docker+springboot 一鍵自動(dòng)部署項(xiàng)目,步驟
    的頭像 發(fā)表于 09-14 09:30 ?1707次閱讀

    Jenkins+Docker一鍵自動(dòng)化部署SpringBoot最簡(jiǎn)流程

    簡(jiǎn)述實(shí)現(xiàn)步驟:在docker安裝jenkins,配置jenkins基本信息,利用Dockerfile和shell腳本實(shí)現(xiàn)
    的頭像 發(fā)表于 11-23 10:16 ?1529次閱讀

    Jenkins+Docker一鍵自動(dòng)化部署SpringBoot項(xiàng)目

    本文章實(shí)現(xiàn)最簡(jiǎn)單全面的Jenkins+docker+springboot 一鍵自動(dòng)部署項(xiàng)目,步驟
    的頭像 發(fā)表于 12-14 10:04 ?1083次閱讀

    關(guān)于Jenkins+docker+springboot一鍵自動(dòng)部署項(xiàng)目

    本文章實(shí)現(xiàn)最簡(jiǎn)單全面的Jenkins+docker+springboot 一鍵自動(dòng)部署項(xiàng)目,步驟
    的頭像 發(fā)表于 05-16 08:59 ?974次閱讀
    關(guān)于<b class='flag-5'>Jenkins+docker</b>+springboot<b class='flag-5'>一鍵</b><b class='flag-5'>自動(dòng)</b><b class='flag-5'>部署</b><b class='flag-5'>項(xiàng)目</b>

    Jenkins+Docker一鍵自動(dòng)化部署SpringBoot應(yīng)用最精簡(jiǎn)流程

    簡(jiǎn)述實(shí)現(xiàn)步驟:在docker安裝jenkins,配置jenkins基本信息,利用Dockerfile和shell腳本實(shí)現(xiàn)
    的頭像 發(fā)表于 11-06 16:27 ?2473次閱讀
    <b class='flag-5'>Jenkins+Docker</b><b class='flag-5'>一鍵</b><b class='flag-5'>自動(dòng)化</b><b class='flag-5'>部署</b>SpringBoot應(yīng)用最精簡(jiǎn)流程

    基于Jenkins+GitLab+Maven實(shí)現(xiàn)代碼自動(dòng)打包編譯發(fā)布

    Jenkins個(gè)獨(dú)立開源的持續(xù)集成和持續(xù)交付工具,用于自動(dòng)化構(gòu)建、測(cè)試和部署軟件項(xiàng)目。
    的頭像 發(fā)表于 11-20 09:57 ?5604次閱讀
    基于<b class='flag-5'>Jenkins</b>+GitLab+Maven<b class='flag-5'>實(shí)現(xiàn)</b>代碼<b class='flag-5'>自動(dòng)</b>打包編譯發(fā)布

    寶塔面板Docker一鍵安裝:部署GPTAcademic,開發(fā)私有GPT學(xué)術(shù)優(yōu)化工具

    人工智能的浪潮中,GPT模型因其強(qiáng)大的自然語(yǔ)言處理能力備受矚目。然而,為了更好地應(yīng)用于學(xué)術(shù)領(lǐng)域,許多人希望能部署自己私有的GPT學(xué)術(shù)優(yōu)化工具。本文將詳細(xì)介紹如何通過寶塔面板和Docker一鍵安裝
    的頭像 發(fā)表于 07-02 11:58 ?3390次閱讀
    寶塔面板<b class='flag-5'>Docker</b><b class='flag-5'>一鍵</b>安裝:<b class='flag-5'>部署</b>GPTAcademic,開發(fā)私有GPT學(xué)術(shù)優(yōu)化工具

    Flexus X 實(shí)例 Docker+Jenkins+gitee 實(shí)現(xiàn) CICD 自動(dòng)化部署 - 解放你的雙手~

    前言 828 B2B 企業(yè)節(jié)特惠來(lái)襲,F(xiàn)lexus X 實(shí)例引領(lǐng)自動(dòng)化部署新紀(jì)元!Docker 攜手 Jenkins 與 Gitee,共創(chuàng) CICD 無(wú)限可能!在快速迭代的數(shù)字時(shí)代,我
    的頭像 發(fā)表于 12-26 18:19 ?385次閱讀
    Flexus X 實(shí)例 <b class='flag-5'>Docker+Jenkins</b>+gitee <b class='flag-5'>實(shí)現(xiàn)</b> CICD <b class='flag-5'>自動(dòng)化</b><b class='flag-5'>部署</b> - 解放你的雙手~

    Jenkins 與 SonarQube 集成部署,自動(dòng)化代碼質(zhì)量監(jiān)控

    的性能表現(xiàn),為 Jenkins 與 SonarQube 的集成部署提供強(qiáng)大支撐。在 Flexus X 的助力下,自動(dòng)化代碼掃描與質(zhì)量問題即時(shí)反饋成為可能,顯著提升團(tuán)隊(duì)開發(fā)效率與軟件質(zhì)量。立即體驗(yàn)華為云
    的頭像 發(fā)表于 01-07 17:24 ?566次閱讀
    <b class='flag-5'>Jenkins</b> 與 SonarQube 集成<b class='flag-5'>部署</b>,<b class='flag-5'>自動(dòng)化</b>代碼質(zhì)量監(jiān)控

    基于 DockerJenkins 實(shí)現(xiàn)自動(dòng)化部署

    828 企業(yè)上云節(jié)優(yōu)惠,開啟您的 DockerJenkins 自動(dòng)化部署之旅,讓軟件創(chuàng)新更快步! 鏈接直達(dá)
    的頭像 發(fā)表于 01-07 17:25 ?395次閱讀
    基于 <b class='flag-5'>Docker</b> 與 <b class='flag-5'>Jenkins</b> <b class='flag-5'>實(shí)現(xiàn)</b><b class='flag-5'>自動(dòng)化</b><b class='flag-5'>部署</b>

    文掌握Jenkins自動(dòng)化部署

    Jenkins自動(dòng)化部署是現(xiàn)代軟件開發(fā)中不可或缺的部分,它不僅簡(jiǎn)化了代碼的發(fā)布過程,還為整個(gè)團(tuán)隊(duì)帶來(lái)了無(wú)與倫比的效率和協(xié)作力。想象下,開
    的頭像 發(fā)表于 04-23 10:50 ?422次閱讀
    <b class='flag-5'>一</b>文掌握<b class='flag-5'>Jenkins</b><b class='flag-5'>自動(dòng)化</b><b class='flag-5'>部署</b>