zoukankan      html  css  js  c++  java
  • Docker安装最新版Jenkins

    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

  • 相关阅读:
    atitit.团队建设要不要招技术储备人才的问题
    Atitit. 最佳实践 QA降低cpu占有率cpu占用太高怎么办
    Atitit.struts2体系结构大总结
    Atitit.hibernate体系结构大总结
    Atitit.软件GUI按钮与仪表盘db数据库区导入mysql sql错误的解决之道
    Atitit. Gui控件and面板程序快速启动区最佳实践Launchy ObjectDocko0g
    Atitit。团队建设管理最佳实践如何留住核心人才,防止人才流失 ??
    Atitit.ALT+TAB没反应车and 点击任务栏程序闪烁但是不能切换
    Atitit.Gui控件and面板数据库区mssql 2008 权限 配置 报表查看成员
    Atitit.故障排除系列NoClassDefFoundError NoClassDefFoundError
  • 原文地址:https://www.cnblogs.com/Hello-TomCat/p/13298971.html
Copyright © 2011-2022 走看看