Jenkins
Jenkins是一个开源软件项目,是基于Java开发的一种持续集成工具,用于监控持续重复的工作,旨在提供一个开放易用的软件平台,使软件的持续集成变成可能。
环境准备
腾讯云
硬件配置:2核4G 1M带宽。50G硬盘。
系统配置:CentOS 7.2
Docker安装
请移步查看:CentOS 7 安装 Docker
安装Jenkins
首先不直接从Docker Store上直接Pull Jenkins 的 Image 文件,因为待会需要进行dotnet core 的 Docker自动部署,需要对宿主机上的Docker进行直接操作,那么需要挂载 Docker 给 Jenkins Image,所以现在需要自己动手编写 Dockerfile 构建自定义的Jenkins。
1.新建Dockerfile
touch Dockerfile
vim Dockerfile
2.加入以下内容:
FROM jenkins/jenkins:lst;
USER root
#清除了基础镜像设置的源,切换成腾讯云的jessie源
#使用非腾讯云环境的需要将 tencentyun 改为 aliyun
RUN echo '' > /etc/apt/sources.list.d/jessie-backports.list
&& echo "deb http://mirrors.tencentyun.com/debian jessie main contrib non-free" > /etc/apt/sources.list
&& echo "deb http://mirrors.tencentyun.com/debian jessie-updates main contrib non-free" >> /etc/apt/sources.list
&& echo "deb http://mirrors.tencentyun.com/debian-security jessie/updates main contrib non-free" >> /etc/apt/sources.list
#更新源并安装缺少的包
RUN apt-get update && apt-get install -y libltdl7 && apt-get update
ARG dockerGid=999
RUN echo "docker:x:${dockerGid}:jenkins" >> /etc/group
# 安装 docker-compose 因为等下构建环境的需要
RUN curl -L https://github.com/docker/compose/releases/download/1.16.1/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
RUN chmod +x /usr/local/bin/docker-compose
3.构建image
docker build . -t auto-jenkins
等待时间可能有点长,请耐心等待。
出现以上 Successfully 内容代表安装Jenkins成功
4.在启动Jenkins时,需要先创建一个Jenkins的配置目录,并且挂载到docker 里的Jenkins目录下
mkdir -p /var/jenkins_home
5.修改目录权限(很重要!)
chown -R 1000 /var/jenkins_home
6.运行 Jenkins
docker run --name jenkins -p 8080:8080 -p 50000:50000
-v /var/run/docker.sock:/var/run/docker.sock
-v $(which docker):/bin/docker
-v /var/jenkins_home:/var/jenkins_home
-d auto-jenkins
出现一串很长的字符串以后,我们的jenkins已经成功启动:
通过命令docker ps
查看运行的镜像:
配置Jenkins
访问http://<你的ip>:8080
访问Jenkins。如果无法访问请检查系统防火墙、云的安全组设置。
可以看到需要我们输入密码。
首选进入容器:
docker exec -it jenkins /bin/bash
然后查看密码:
cat /var/jenkins_home/secrets/initialAdminPassword
复制输出的内容,粘贴到Administrator password,输入 exit 退出容器,此时进行下一步你会看到此界面,点击 Install suggested plugins
等待安装完毕:
如果有插件安装失败,不用紧张,安装结束之后会有"Retry”重试选项,点击重试即可。
漫长的等待之后到了下一步:
根据表单填写信息之后就结束了!
进入主界面后如果看到右上角有错误的提示信息,那么请把你的Jenkins升级到最新版本,然后更新一下插件。
如果更新之后出现协议警告:
我们可以直接点击警告中的Protocol Configuration,或者点击系统管理—>全局安全配置—>Agents—>Agent protocols
将那两项取消勾选即可。
配置加速器
【系统管理】-> 【插件管理】-> 【高级】-> 【升级站点】
更换地址:http://mirror.xmission.com/jenkins/updates/current/update-center.json
至此Jenkins的配置就结束了!
转载于:https://www.cnblogs.com/stulzq/p/8627360.html
很久没有安装jenkins了,因为之前用的的服务器一直正常使用,令人郁闷的是,之前用jenkins一直没出过这个问题。
令人更郁闷的是,我尝试了好多个历史版本和最新版本,甚至从之前的服务器把jenkins在跑的程序打包copy这个服务器。终究还是不行。
启动时候,提示:该jenkins实例似乎已离线
可以说是非常坑!!!!!!!!!!!!!!!!!!!!!!!!!!!!
虽然可以离线安装,但是对于博主来说不解决怎么行呢?经过一番踩坑与资料查找终于解决了,这里与大家分享一下:
问题如图下所示:
解决上述问题方法:
1) 修改/var/lib/jenkins/updates/default.json
jenkins在下载插件之前会先检查网络连接,其会读取这个文件中的网址。默认是:
访问谷歌,这就很坑了,服务器网络又不能FQ,肯定监测失败呀,不得不说jenkins的开发者脑子锈了,所以将图下的google改为www.baidu.com即可,更改完重启服务。
2) 修改/var/lib/jenkins/hudson.model.UpdateCenter.xml
该文件为jenkins下载插件的源地址,改地址默认jenkins默认为:https://updates.jenkins.io/update-center.json,就是因为https的问题,此处我们将其改为http即可,之后重启jenkins服务即可。
其他国内备用地址(也可以选择使用):
https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json
http://mirror.esuni.jp/jenkins/updates/update-center.json
3)安装插件那个页面,就是提示你offline的那个页面,不要动。然后打开一个新的tab,输入网址http://localhost:8080/jenkins/pluginManager/advanced。 这里面最底下有个【升级站点】,把其中的链接改成http的就好了,
http://updates.jenkins.io/update-center.json。 然后在服务列表中关闭jenkins,再启动,这样就能正常联网了
在修复完之后,我们发现离线问题已经解决,如图下所示:
这样我们就可以愉快地安装插件了。转载于 https://www.cnblogs.com/du-hong/p/10655635.html