docker之jenkins安裝

拉取jenkins鏡像

docker pull jenkins/jenkins:lts

這是最新版的jenkins 鏡像,其他的jenkins鏡像倉庫都被官方棄用了

創建jenkins 容器

docker run -d -p 8090:8080 -p 50000:50000 \
-v /opt/jenkins/:/var/jenkins_home \
-v /etc/localtime:/etc/localtime \
--restart=always \
--name jenkins \
jenkins/jenkins:lts

-d:後臺模式啓動
-p 端口映射 將本地的 8090 端口綁定到容器的 8080 端口上
基於 JNLP 的 Jenkins 代理通過 TCP 端口 50000 與 Jenkins master 進行通信
-v:(掛載卷)主機的目錄 /opt/jenkins 映射到容器的 /var/jenkins_home。
–name:給新創建的容器命名,
–restart=always 當docker重啓後 容器也會自動重啓

docker ps -a

在這裏插入圖片描述
發現容器已經退出運行
我們查看日誌

docker logs jenkins

在這裏插入圖片描述
發現是volume(j卷)的權限問題,當映射本地卷(/opt/jenkins)時,
/var/jenkins_home 的用戶爲root,jenkins的usr就沒有訪問權限,
我們用以下命令

 docker run -ti --rm --entrypoint="/bin/bash" jenkins/jenkins:lts  -c "whoami && id" 

在這裏插入圖片描述
得知容器中jenkins user的uid爲1000
此時 賦予 uid 1000 的文件操作權限

chown -R 1000:1000 /opt/jenkins

啓動並查看日誌

docker start jenkins &&
docker -t -f --tail 100 jenkins 

jenkins正常啓動,但是在日誌中 有可能發現以下錯誤日誌
在這裏插入圖片描述
說明,這個地址連接超時,下在插件會失敗,有兩個解決辦法
首先在掛載的/opt/jenkins目錄下找到hudson.model.UpdateCenter.xml文件

vi hudson.model.UpdateCenter.xml

第一種:將https://updates.jenkins.io/update-center.json的s去掉
第二種:換成國內的鏈接,
https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json
然後重啓容器

docker restart jenkins 

打開網址

http://xxx.xxx.32.xxx:8090

出現
在這裏插入圖片描述
至此安裝成功!

解鎖jenkins

jenkins啓動後,使用docker logs jenkins
在這裏插入圖片描述
第一個紅框即jenkins 初始密碼 這個密碼保存在第二個紅框路徑下
同時 掛載在/opt/jenkins目錄下
輸入密碼後,可能提示
在這裏插入圖片描述
解決方法如下:
修改hudson.model.UpdateCenter.xml,方法再上文中⬆
修改/opt/jenkins/updates/default.json
因jenkins在安裝插件時需要檢查網絡,默認是訪問google的
我們需要改成百度的www.baidu.com
在這裏插入圖片描述
該好後 重啓jenkins 無日誌異常

 docker restart jenkins && docker logs -t -f --tail 100 jenkins

插件安裝 選擇新手入門

創建賬戶

實例配置

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章