Docker內(nèi)如何更新Jenkins
很多小伙伴在Docker中使用Jenkins時(shí)更新遇到困難,本次結(jié)合自己的實(shí)際經(jīng)驗(yàn),詳細(xì)講解。
根據(jù)官網(wǎng)Jenkins了解以下內(nèi)容:
一、Jenkins 是什么?
Jenkins是一款開源 CI&CD 軟件,用于自動(dòng)化各種任務(wù),包括構(gòu)建、測(cè)試和部署軟件。
Jenkins 支持各種運(yùn)行方式,可通過系統(tǒng)包、Docker 或者通過一個(gè)獨(dú)立的 Java 程序。
二、開始使用 Jenkins
本導(dǎo)讀將向您介紹使用 Jenkins、Jenkins 的主要特性和 Jenkins Pipeline 的基本知識(shí)。
本導(dǎo)讀使用“獨(dú)立”的 Jenkins 發(fā)行版,它可以在您自己本地的機(jī)器上運(yùn)行。
2.1 準(zhǔn)備工作
第一次使用 Jenkins,您需要:
機(jī)器要求:
內(nèi)存 | 硬盤 |
---|---|
256 MB 內(nèi)存,建議大于 512 MB | 10 GB 的硬盤空間 |
需要安裝的軟件:
- Java 8 ( JRE 或者 JDK 都可以)
- Docker (導(dǎo)航到網(wǎng)站頂部的Get Docker鏈接以訪問適合您平臺(tái)的Docker下載)
2.2 下載并運(yùn)行 Jenkins
1.下載 Jenkins.
2.打開終端進(jìn)入到下載目錄.
3.運(yùn)行命令
java -jar jenkins.war --httpPort=8080
4.打開瀏覽器進(jìn)入鏈接
http://localhost:8080
5.按照說明完成安裝.
三、通過docker-compose部署Jenkins
我的代碼如下:
version: "3" volumes: # 自定義數(shù)據(jù)卷 jenkins_vol: #定義數(shù)據(jù)卷同步存放jenkins數(shù)據(jù) networks: jenkins_network: driver: bridge services: jenkins: image: jenkins/jenkins ports: - "8080:8080" - "50000:50000" volumes: - ./compose/jenkins/jenkins_home:/jenkins_file - jenkins_vol:/var/jenkins_home networks: - jenkins_network restart: always
名詞解釋:
volumes
——自定義數(shù)據(jù)卷networks
——自定義網(wǎng)絡(luò)(默認(rèn)橋接), 不使用links通信services
——定義服務(wù)
jenkins: # jenkins服務(wù) image: jenkins/jenkins # jenkins鏡像 ports: # 端口映射 - "8080:8080" # 映射到宿主機(jī)端口 - "50000:50000" # 映射到宿主機(jī)端口 volumes: # 數(shù)據(jù)卷掛載 - ./compose/jenkins/jenkins_home:/jenkins_file # 掛載jenkins數(shù)據(jù) - jenkins_vol:/var/jenkins_home # 掛載jenkins數(shù)據(jù) networks: # 網(wǎng)絡(luò) - jenkins_network # 自定義網(wǎng)絡(luò) restart: always # 重啟策略
通過命令運(yùn)行:
sudo docker-compose up -d
執(zhí)行完畢后,Jenkins創(chuàng)建成功:
在瀏覽器通過URL訪問http://ip:8080進(jìn)行訪問,首次使用根據(jù)頁面提示進(jìn)行操作:
可使用cat命令查看密碼進(jìn)行登錄:
cat /var/jenkins_home/secrets/initialAdminPassword
得到一串字符,這就是密碼,復(fù)制到瀏覽器中點(diǎn)擊繼續(xù):
這里根據(jù)需求安裝 ,后續(xù)一路默認(rèn)安裝填寫即可。
四、更新Jenkins
根據(jù)提示,當(dāng)前有更新版本:
點(diǎn)擊Downlaod進(jìn)入下載jenkins.war文件 ,下載完成后將jenkins.war文件復(fù)制到本地與Docker容器掛載的對(duì)應(yīng)目錄,根據(jù)上面的部署文件可以看出,該項(xiàng)目的本地掛載路徑為:
./compose/jenkins/jenkins_home
該路徑對(duì)應(yīng)docker容器路徑為:
/jenkins_file
進(jìn)入Docker容器,使用cd命令進(jìn)入jenkins_file目錄,使用cp命令復(fù)制.war包到解析目錄,jenkins默認(rèn).war包路徑為/usr/share/jenkins
cp jenkins.war /usr/share/jenkins
最后重啟容器就會(huì)發(fā)現(xiàn)jenkins更新成功了!??!
如果遇到容器內(nèi)cp權(quán)限問題 ,使用docker exec -it -u root 容器id /bin/bash進(jìn)入即可
總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
從Docker容器中備份整個(gè)PostgreSQL的操作步驟
現(xiàn)在需要從Docker容器中備份整個(gè)PostgreSQL后,然后,使用備份文件在另外一個(gè)pg的docker容器中恢復(fù)過來,所以本文給大家介紹了從Docker容器中備份整個(gè)PostgreSQL的操作步驟,通過代碼示例講解的非常詳細(xì),具有一定的參考價(jià)值,需要的朋友可以參考下2024-10-10centos6使用docker部署kafka項(xiàng)目的方法分析
這篇文章主要介紹了centos6使用docker部署kafka項(xiàng)目的方法,結(jié)合實(shí)例形式分析了centos6環(huán)境下使用docker部署kafka項(xiàng)目的相關(guān)命令與使用技巧,需要的朋友可以參考下2020-02-02docker自建GitLab倉庫的實(shí)現(xiàn)
Harbor是一個(gè)用于存儲(chǔ)和分發(fā)Docker鏡像的企業(yè)級(jí)Registry服務(wù)器,本文主要介紹了docker自建GitLab倉庫的實(shí)現(xiàn),具有一定的參考價(jià)值,感興趣的可以了解一下2024-07-07生產(chǎn)環(huán)境中安全運(yùn)行Docker容器
本文是一篇譯文,給大家詳細(xì)介紹如何在生產(chǎn)環(huán)境中安全運(yùn)行Docker容器,有需要的小伙伴可以參考下2017-01-01