使用docker安裝jenkins

使用docker安裝jenkins

安裝配置docker

1.更換yum源,若是原本就是國內源,無需更換nginx

curl -fsSL "https://gitee.com/clay-wangzhi/shell/raw/master/repo_replace.sh" | bash

2.安裝配置Dockergit

使用官方腳本安裝 Dockerdocker

curl -fsSL "https://get.docker.com/" | bash -s -- --mirror Aliyun

加載br_netfiltershell

modprobe br_netfilter

設置下系統內核參數json

cat<<EOF > /etc/sysctl.d/docker.conf
# 要求iptables不對bridge的數據進行處理
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
net.bridge.bridge-nf-call-arptables = 1
# 開啓轉發
net.ipv4.ip_forward = 1
EOF
sysctl -p /etc/sysctl.d/docker.conf

⚠️ 慎用sysctl --system命令,若是參數在不一樣文件中設置,會有優先級問題,目前看來/etc/sysctl.conf的優先級最高centos

配置docker鏡像加速器bash

curl -sSL https://get.daocloud.io/daotools/set_mirror.sh | sh -s http://f1361db2.m.daocloud.io

啓動docker服務並加入開機自啓markdown

systemctl enable docker && systemctl start docker

安裝配置nginx

1.新增nginx yum源網絡

要設置yum存儲庫,請建立名爲/etc/yum.repos.d/nginx.repo的文件,內容以下:curl

[nginx-stable]
name=nginx stable repo
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
gpgcheck=1
enabled=1
gpgkey=https://nginx.org/keys/nginx_signing.key
module_hotfixes=true

[nginx-mainline]
name=nginx mainline repo
baseurl=http://nginx.org/packages/mainline/centos/$releasever/$basearch/
gpgcheck=1
enabled=0
gpgkey=https://nginx.org/keys/nginx_signing.key
module_hotfixes=true

2.安裝&&啓動nginx

yum -y install nginx
nginx

3.配置hosts解析

echo "127.0.0.1 www.google.com" >> /etc/hosts

安裝配置jenkins

⚠️ 執行此步驟前,須要先安裝配置nginx,在container啓動時network設置爲host時,我更新主機的hosts文件後,發現容器內的hosts文件沒有更新,當前docker版本爲20.10.6

1.下載jenkins鏡像

docker pull jenkinsci/blueocean:1.24.6

2.建立掛載目錄

mkdir -p /opt/jenkins-data

3.建立並啓動jenkins

docker run -u root --rm -d -e JAVA_OPTS=-Duser.timezone=Asia/Shanghai --mount type=bind,source=/opt/jenkins-data,target=/var/jenkins_home --network=host --name jenkins jenkinsci/blueocean:1.24.6

4.剩下的步驟按着提示完成就行,安裝配置nginx的緣由以下:

輸入密碼後第二步報」該Jenkins實例彷佛已離線「,網上搜方案有兩種:

1)更改插件下載源,具體步驟以下:

# 進入http://ip:8080/jenkins/pluginManager/advanced
# 將最下面的 Update Site 的 URL 地址替換成:http://mirror.esuni.jp/jenkins/updates/update-center.json
# 點「submit」按鈕,而後點右下角角 「check now」
# 而後輸入地址 http://ip:8080/jenkins/restart 重啓 jenkins 後再從新安裝插件

2)修改 /var/lib/jenkins/updates/default.json 文件中的 connectionCheckUrl 項值爲國內可訪問的地址。

經實驗,兩種方式都不能保證100% 初始化成功

方法一更新的是插件的下載源,可是我還沒開始下載插件,只是下載插件前的檢查網絡;

方法二重啓jenkins又被重置爲谷歌域名。

考慮connectionCheckUrl 只是用來安裝插件時檢查網絡是否ping通,所以直接在本機上給www.google.com 指向到本地,再給配一個nginx 響應便可。

相關文章
相關標籤/搜索