【问题标题】:Allow Docker strategy in Openshift 3在 Openshift 3 中允许 Docker 策略
【发布时间】:2018-04-01 01:50:44
【问题描述】:

我正在尝试了解新的 OpenShift 系统,现在我们已将图像推送到它。我对 Docker 了解一点,我想使用它。我在某些地方读到我们可以选择 Docker 作为策略。

所以基本上我创建了一个基于httpd 的图像和一个基本的 html 文件,并尝试使用项目文件夹中的以下命令推送它:

oc new-app . --strategy=docker

我在控制台上收到这条消息:

错误:buildconfigs.build.openshift.io “openshift”被禁止:构建策略 Docker 不被允许

我必须做什么才能允许它?我在任何地方都没有看到很好的解释...

【问题讨论】:

  • 您可以在本地构建映像并将其推送到 OpenShifts Image Registry。新图像版本上传完成后,OpenShift 会立即重建和部署您的应用程序。这是该策略的一个很好的教程:blog.openshift.com/getting-started-docker-registry
  • 我关注了上面@Rotareti 指出的博客,它成功了,您需要做的就是:1)使用 Openshift 存储库名称和您的项目名称标记图像docker tag <image_id> <repo>/<project>/<app_name> 2)使用推送图像刚刚创建的标签docker push <image_tag> 3) 创建应用oc new-app <app_name> --name=<svc_name>

标签: ubuntu docker openshift dockerfile openshift-origin


【解决方案1】:

如果您使用的是 OpenShift Online,则无法启用 docker 构建类型。对于 OpenShift Online,您可以选择在本地构建映像,然后将其推送到外部映像注册表(例如 Docker Hub),或者登录到内部 OpenShift 注册表并将映像直接推送到其中。然后可以在部署中使用该映像。

如果你已经搭建了自己的OpenShift集群,我的理解是docker构建类型应该默认开启。您可以在以下位置找到更多详细信息:

如果您正在寻找一种使用httpd Web 服务器部署站点的方法,那么可以使用 S2I 构建器映像来执行此操作。见:

【讨论】:

  • 我正在使用 Openshift 3。我使用 Web 控制台。这是否意味着它是 Open Shift Online?
  • 如果你要去manage.openshift.com登录,那就是OpenShift Online。
  • OpenShift Online 是否允许其他构建策略(用于图像),还是严格要求在外部构建图像?
  • OpenShift Online 提供 source 构建策略 (S2I)。 dockercustom 构建策略均未启用。因此,您可以在 OpenShift Online 中构建映像,但只能使用 source 构建策略。
  • 我使用 Openshift 已经有一段时间了。不幸的是,我使用 Docker 构建类型。我需要迁移到云端,所以我尝试了 Amazon EKS。转换我的模板需要做很多工作,所以我启动了 Openshift Online。来看看他们限制了我能做什么,无论如何我都必须转换我的模板。好吧,回到 Amazon EKS。如果我无论如何都要转换我的模板,我还不如花时间转换为行业标准。
【解决方案2】:

如果您想获得有关此策略的经验,您始终可以在本地设置 Minishift 以使用 Docker 构建策略构建您的映像。

https://docs.openshift.org/latest/minishift/getting-started/installing.html

【讨论】:

    猜你喜欢
    • 2021-05-25
    • 2017-12-30
    • 2020-10-02
    • 2019-10-30
    • 2021-12-18
    • 1970-01-01
    • 1970-01-01
    • 2020-01-26
    • 2020-03-04
    相关资源
    最近更新 更多