【问题标题】:How to deploy a Docker image from a private repository on Cloud Foundry?如何从 Cloud Foundry 上的私有存储库部署 Docker 映像?
【发布时间】:2017-07-19 11:36:27
【问题描述】:

我用

推送了一个本地 Docker 镜像
docker push bspartifact.artifactory.example.com/bspartifact:1.0

到我的私人 Docker 中心。我现在如何将该映像部署到 Cloud Foundry?回购通过使用用户名和密码的基本身份验证来保护。谢谢。

编辑:

尝试 --docker-username 标志会导致以下错误:

Staging...
Staging process started ...
Failed to talk to docker registry: Get https://bspartifact.artifactory.example.com/v2/: dial tcp 10.xx.xxx.xxx:443: getsockopt: connection refused
Failed to talk to docker registry: Get http://bspartifact.artifactory.example.com/v2/: dial tcp 10.xx.xxx.xxx:80: getsockopt: connection refused

【问题讨论】:

  • docker login 给你的注册伙伴了吗?
  • 是的,我做到了。我还尝试了 --docker-username ,如下面的答案中所述。
  • 告诉我们docker -v
  • Docker 版本 17.03.1-ce,构建 c6d412e

标签: docker cloud-foundry artifactory dockerhub swisscomdev


【解决方案1】:

使用 cf CLI 6.28.0 或更高版本,运行 cf push myapp -o bspartifact.artifactory.example.com/bspartifact:1.0 --docker-username myuser。这将提示您输入密码。
对于非交互式使用,请将环境属性 CF_DOCKER_PASSWORD 设置为您的密码,CLI 将使用该密码。
详细参考以下文档:http://docs.cloudfoundry.org/devguide/deploy-apps/push-docker.html#private-repo

【讨论】:

  • 谢谢。不幸的是,这会引发错误。我将错误消息复制到我的问题中。
  • 请注意,CLI 所做的只是告诉您的目标 CF 从您在启动应用程序时指定的注册表中下载 Docker 映像。因此,您的注册表必须可以从 Diego 单元访问。该错误似乎表明它不能。您的注册表是否可以从 CF 路由到网络上?您是否已将应用程序安全组配置为允许此访问?
  • 谢谢。奇怪的是,如果我对本地 Docker 做同样的事情,它就可以工作。但是,如果我尝试为 CF 执行此命令,则会出现错误。 CF 和我的集线器甚至在同一个环境中运行。
  • 使用cf space your-space --security-group-rules 查看是否有任何安全组(它是IP 范​​围/端口的白名单)允许CF 访问您的Docker 注册表。默认情况下,10.x 不存在(public_networks 不包括 10.x 范围)。如前所述,在 CF v260 (CC API 2.82.0) 中添加了私有 Docker 存储库支持。如果您使用的是旧版本,我预计会看到身份验证错误(CLI 将凭据传递给 CC,但 CC 忽略了它们,因此使用 Docker 注册表进行身份验证失败)。
【解决方案2】:

正如 dkoper 所述 - 您必须使用 cf CLI 6.28.0 或更高版本。但是您的 Cloud Foundry 提供商也应该支持这一点。推送 docker 镜像的功能是使用 Cloud Foundry api 版本 2.82.0 实现的。您可以使用 cf api 检查您的 Cloud Foundry 提供商运行的 api 版本。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-10-02
    • 1970-01-01
    • 1970-01-01
    • 2019-07-18
    • 1970-01-01
    • 1970-01-01
    • 2020-04-27
    • 2021-03-26
    相关资源
    最近更新 更多