【问题标题】:Jenkins issue with docker push to private repoJenkins 与 docker push 到私人仓库有关的问题
【发布时间】:2017-03-21 22:48:46
【问题描述】:

我在我的 DC/OS 上运行 jenkins 服务器,并且在同一个 DC 中还有一个私有注册表。

私有注册表没有任何 ssl 证书,为了从我的 mac 推送图像,我使用了以下命令

ocker-machine ssh 默认 "echo $'EXTRA_ARGS=\"--insecure-registry \"' | sudo tee -a /var/lib/boot2docker/profile && sudo /etc/init.d/docker restart"

所以它工作得很好。

在 jenkins 上,我尝试设置 DOCKER_OPTS 参见 https://docs.docker.com/registry/insecure/

但后来我发现构建实际上是在代理上运行的,那么如何配置 jenkins worker 以信任我的私有注册表?

【问题讨论】:

  • 使用json配置文件:/etc/docker/daemon.json。适用于几乎所有设置。地址:{..., "insecure-registries": [ "your registry" ], ...}See the --config-file option
  • 您可以将文件放在任何地方,但是您必须使用 config-file=/path/to/file.json 选项启动 docker 守护程序。如果您将文件放在/etc/docker/daemon.json,它将被拾取而没有任何更改(可能需要重新启动守护程序)。
  • @MichaelHausenblas 是的,我以这种方式安装了注册表,并通过 ssh 成功推送图像,但不是通过 jenkins build。
  • @Rik 非常感谢您的解释,10 倍。

标签: jenkins docker-registry dcos


【解决方案1】:

如果您从 Mesosphere Universe 安装 Jenkins,则默认 Jenkins 代理容器使用 docker-in-docker。

有关如何配置 docker run 参数以添加环境变量,请参阅 DC/OS Jenkins 服务指南:https://docs.mesosphere.com/1.8/usage/service-guides/jenkins/advanced-configuration/

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-08-06
    • 1970-01-01
    • 1970-01-01
    • 2020-04-27
    • 2018-12-06
    • 1970-01-01
    • 2021-11-01
    相关资源
    最近更新 更多