Jenkins 设置镜像_docker+jenkins自动化部署
一、centos安裝jenkins
1.1 安裝jenkins
1. Jenkins是一個Java應(yīng)用程序,因此第一步需要確認(rèn)具有java環(huán)境
2.下一步是啟用Jenkins存儲庫。為此,請使用以下curl命令導(dǎo)入GPG密鑰:
curl --silent --location http://pkg.jenkins-ci.org/redhat-stable/jenkins.repo | sudo tee /etc/yum.repos.d/jenkins.repo并使用以下命令將存儲庫添加到系統(tǒng):
rpm --import https://jenkins-ci.org/redhat/jenkins-ci.org.key3.啟用存儲庫后,鍵入以下命令安裝最新的穩(wěn)定版Jenkins:
yum install jenkins安裝過程完成后,啟動Jenkins服務(wù):
systemctl start jenkins要檢查它是否已成功運(yùn)行:
systemctl status jenkins你應(yīng)該看到類似的東西:
最后啟用Jenkins服務(wù)以啟動系統(tǒng)啟動。
systemctl enable jenkins1.2 調(diào)整防火墻
如果要在有防火墻的遠(yuǎn)程CentOS服務(wù)器上安裝Jenkins,則需要添加8080。
使用以下命令打開必要的端口:
firewall-cmd --permanent --zone=public --add-port=8080/tcpfirewall-cmd --reload1.3 設(shè)置Jenkins
要設(shè)置新的Jenkins安裝,請打開瀏覽器并鍵入域或IP地址,然后輸入端口8080:
http://your_ip_or_domain:8080
將出現(xiàn)類似于以下內(nèi)容的屏幕,提示您輸入在安裝期間創(chuàng)建的管理員密碼:
使用以下命令在終端上打印密碼:
cat /var/lib/jenkins/secrets/initialAdminPassword您應(yīng)該看到一個32個字符的長字母數(shù)字密碼,如下所示:
2115173b548gdas2a203ee99a8732a32
從終端復(fù)制密碼,將其粘貼到管理員密碼字段中,然后單擊Continue。
在下一個屏幕上,系統(tǒng)將詢問您是要安裝建議的插件還是選擇特定的插件。單擊該Install suggested plugins框,安裝過程將立即開始。
安裝完成后,系統(tǒng)將提示您設(shè)置第一個管理用戶。填寫所有必填信息,然后單擊Save and Continue。
在下一頁中,將要求您設(shè)置Jenkins實例的URL。URL字段將填充自動生成的URL。
要完成設(shè)置,請單擊Save and Finish按鈕確認(rèn)URL 。
最后,單擊該Start using Jenkins按鈕,您將被重定向到以前面一個步驟中創(chuàng)建的管理員用戶身份登錄的Jenkins儀表板。
如果你已達(dá)到這一點,那么你已經(jīng)在CentOS系統(tǒng)上成功安裝了Jenkins。二、安裝docker
2.1 移除舊docker
sudo yum remove docker docker-client docker-client-latest docker-common docker-latest docker-latest-logrotate docker-logrotate docker-selinux docker-engine-selinux docker-engine2.2 安裝docker依賴庫
yum install -y yum-utils device-mapper-persistent-data lvm2yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repoyum install -y docker-ce2.3 配置docker
systemctl enable dockersystemctl daemon-reloadsystemctl start docker2.4 查詢docker版本
docker --version2.5 安裝 docker-compose
docker-compose是一個python編寫的docker編排工具,后面的啟動服務(wù)都是以docker-compose來啟動,這樣就不需要每次都手動輸入docker啟動命令的各項配置參數(shù),簡化操作。首先安裝pip:
#安裝 python36yum install python36 -y#查看版本python36 --version#創(chuàng)建軟鏈ln -s /usr/bin/python3.6 /usr/bin/py3ln -s /usr/bin/python3.6 /usr/bin/python3#安裝pip3yum install openssl-devel -yyum install zlib-devel -y#安裝 setuptoolswget --no-check-certificate https://pypi.python.org/packages/source/s/setuptools/setuptools-19.6.tar.gz#md5=c607dd118eae682c44ed146367a17e26tar -zxvf setuptools-19.6.tar.gzcd setuptools-19.6python3 setup.py buildpython3 setup.py install#安裝 pip3wget https://github.com/pypa/pip/archive/9.0.1.tar.gztar -zvxf 9.0.1.tar.gzcd pip-9.0.1python3 setup.py install#查看 pip3版本pip3 --version#升級pip3pip3 install --upgrade pip#安裝docker-compose
pip3 install docker-compose#查看版本
docker-compose version2.6 項目添加 Docker 支持
在pom文件加上插件:
- imageName指定了鏡像的名字,本例為 forep/eureka-server
- dockerDirectory指定 Dockerfile 的位置
- resources是指那些需要和 Dockerfile 放在一起,在構(gòu)建鏡像時使用的文件,一般應(yīng)用 jar 包需要納入。
- buildArgs是指打包后的名稱
在dickerDirectory的路徑下編寫Dockerfile文件
三、Jenkins使用
3.1 安裝插件
在 系統(tǒng)管理 > 插件管理 > 可選插件中搜索并安裝docker、maven、svn等相關(guān)插件
3.2 新建任務(wù)
選擇構(gòu)建Maven項目
3.3 源碼管理
選擇svn地址
3.4 構(gòu)建鏡像后操作(將鏡像推送到公有云倉庫)
#腳本代碼: ##### ## ## 構(gòu)建鏡像之后推送鏡像到公有云鏡像倉庫 ## #######版本號 _tag=1.0 ##鏡像名稱 _imageName=xxx ##倉庫賬號 _username=xxx ##倉庫密碼 _password=xxx ##倉庫域名 _domain=xxx ##倉庫地址 _registry=xxx##獲取鏡像id _imageId=`docker images | grep ${_imageName} | awk '{print $3}'` ##登錄推送鏡像 echo "${_password}" | docker login --username=${_username} --password-stdin ${_domain} docker tag ${_imageId} ${_domain}/${_registry}/${_imageName}:${_tag} echo '====================開始推送鏡像==================' docker push ${_domain}/${_registry}/${_imageName}:${_tag} echo '====================推送鏡像完成=================='##啟動鏡像 docker run -d -p 9030:9030 --network=xxx --name=xxx --restart=always xxx##刪除tag后的鏡像 docker rmi ${_domain}/${_registry}/${_imageName}:${_tag} ##刪除所有none鏡像 none_images=`docker images -f "dangling=true" -q` [ ! -z "$none_images" ] && docker rmi $none_images總結(jié)
以上是生活随笔為你收集整理的Jenkins 设置镜像_docker+jenkins自动化部署的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: cmos逻辑门传输延迟时间_CMOS和T
- 下一篇: wps怎么做时间线_妈妈忙碌没时间给娃做