参照 Jenkins 的官方文档 搭建环境,搭建后有两个容器,一个是 docker:dind,另一个是 jenkins/jenkins

公司网络管理比较严格,宿主机无法访问外网,包管理器、镜像等只能用内网地址。宿主机已经配置好了镜像地址,且在宿主机进行构建时,正常。

但是在 Jenkins 中构建镜像时,却构建失败。解决一系列问题后,发现构建镜像时,输出中有如下内容:

Step 1/13 : FROM jenkins/jenkins:latest
Get "https://registry-1.docker.io/v2/": context deadline exceeded
Build step 'Execute shell' marked build as failure
Finished: FAILURE

我初步认定是没有配置好镜像地址。在两个容器内执行 docker system info,发现没有 Registry Mirrors 项。但是容器内部无法像宿主机一样对 docker 进行配置,网上也查不到这种情况下如何配置镜像地址。

在不改变 “以 Docker 方式运行 Jenkins” 的前提下,如何配置?

配置文件原理上和官网教程基本一致,只是改为在内网完成全部操作,就不贴了。


↙↙↙阅读原文可查看相关链接,并与作者交流