V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
mtony
V2EX  ›  程序员

jenkins 无法安装插件

  •  
  •   mtony ·
    mmtony · 2020-11-15 22:12:52 +08:00 · 1807 次点击
    这是一个创建于 435 天前的主题,其中的信息可能已经有所发展或是发生改变。

    docker 起了个 jenkins 容器,无法安装任何插件,日志大量报错 java.io.IOException: Downloaded file xxx does not match expected SHA-256, expected ...

    更换了源也不行,在其他服务器上试也不行。

    从中午一直持续到现在,我的问题?你们的正常吗?

    18 条回复    2020-11-16 16:48:01 +08:00
    Illusionary
        1
    Illusionary  
       2020-11-15 22:27:50 +08:00
    换国内的插件源试试吧
    xuanbg
        2
    xuanbg  
       2020-11-15 22:38:33 +08:00
    @Illusionary 换源没用,实际下载并不是在国内。科学上网可解。
    FieldFarmer
        3
    FieldFarmer  
       2020-11-15 22:45:52 +08:00 via Android
    @xuanbg 还是国外下载地址的话,那么换源方法可能有点问题,不知道你们是怎么换源的,实际上 jenkins 配置文件中有个叫 default. json,把里面的 google 和 jenkins 官网地址全换成 baidu 和清华的镜像地址才行,然后 jenkins 更新一下配置文件重启就可以正常访问了
    mtony
        4
    mtony  
    OP
       2020-11-15 22:50:23 +08:00
    @FieldFarmer 都试了还是没用。
    xuanbg
        5
    xuanbg  
       2020-11-15 22:55:21 +08:00
    @FieldFarmer update.json 里面写的是国外的地址,你改啥都不好使。
    FieldFarmer
        6
    FieldFarmer  
       2020-11-15 23:02:49 +08:00 via Android
    @mtony 完整解决办法:
    1 、检查防火墙
    2 、jenkins 配置文件中有个 hudson.model.UpdateCenter.xml ,将该文件中的有个插件更新源的 url 替换为清华源 https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/current/update-center.json
    3 、jenkins 配置文件夹有个 updates 的文件夹,里面有个 default. json,在 updates 文件夹下使用两个命令操作该文件
    sed -i ‘s/http://updates.jenkins-ci.org/download/https://mirrors.tuna.tsinghua.edu.cn/jenkins/g’ default.json

    sed -i ‘s/http://www.google.com/https://www.baidu.com/g’ default.json
    这两句的作用是将该文件里面的内容替换到清华插件源
    4 、重启 jenkins
    以上方法都试过还没用的话,那就没办法了
    FieldFarmer
        7
    FieldFarmer  
       2020-11-15 23:04:22 +08:00 via Android
    @xuanbg 我知道里面是 google 以及 jenkins 插件官方地址,所以需要修改成清华源,本人亲测是成功的,阿里云服务器以及虚拟机里都试过该方法,改了之后速度快的飞起
    mtony
        8
    mtony  
    OP
       2020-11-15 23:08:12 +08:00
    @FieldFarmer 好吧,还是感谢。
    mtony
        9
    mtony  
    OP
       2020-11-15 23:10:23 +08:00
    @FieldFarmer 奇了怪了,我的服务器也在阿里云,按照上面方法咋不行呢。
    FieldFarmer
        10
    FieldFarmer  
       2020-11-15 23:12:46 +08:00 via Android
    另外有个需要注意的点就是我说的第二步,实际上 jenkins 安装成功之后,设置里面有个更新插件源的地址栏和更新按钮,网上很多方法是教你填一个清华的地址然后点更新按钮(也就是我第二步里面的那个地址),实际上这个地址是一个 json 文件,里面的内容和 jenkins 的原始 default. json 文件一模一样,google 和 jenkins 插件官方地址都没变,因此很多人说这个方法没用,所以我说根本性解决方案是第三步才能解决问题,第二步可以不做(第三步成功以后,也不要在 jenkins 管理页面上点那个 update 的按钮,会被覆盖的)
    FieldFarmer
        11
    FieldFarmer  
       2020-11-15 23:18:02 +08:00 via Android
    @mtony 你重启 jenkins 之后,有重新看下 default. json 里面的内容是否成功替换了吗?我给的这个地址是清华的配置文件,你可以打开看下,这个文件里面实际上内容没改的,里面很多 url 还是 google 和 jenkins 官方插件源 url,执行了第三步按理应该改了,你检查一下是否替换成功,如果没改动,那就说明没有换源成功,
    mtony
        12
    mtony  
    OP
       2020-11-15 23:44:00 +08:00
    @FieldFarmer 我这边试了没有用,可以在你机器上起个 docker 试试看。
    scemsjyd
        13
    scemsjyd  
       2020-11-16 09:28:36 +08:00 via Android
    离线安装呗,先下载插件,手动导入
    8bit
        14
    8bit  
       2020-11-16 10:01:13 +08:00
    @mtony FieldFarmer 老哥说的没问题,我就是这样搞的。实在不行挂个代理
    freeport
        15
    freeport  
       2020-11-16 15:10:46 +08:00
    全部试过, 没有用哎
    jaylee4869
        16
    jaylee4869  
       2020-11-16 15:56:56 +08:00
    我今天在 Kubernetes 里安装 Jenkins 也遇到了这个问题,文件 SHA-256 全部错误。
    jaylee4869
        17
    jaylee4869  
       2020-11-16 16:03:20 +08:00
    所有插件的 SHA256 都是:47DEQpj8HBSa+/TImW+5JCeuQeRkm5NMpJWZG3hSuFU=
    jaylee4869
        18
    jaylee4869  
       2020-11-16 16:48:01 +08:00
    @mtony @freeport 现在恢复了。
    关于   ·   帮助文档   ·   API   ·   FAQ   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   2585 人在线   最高记录 5497   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 14:52 · PVG 22:52 · LAX 06:52 · JFK 09:52
    ♥ Do have faith in what you're doing.