首页 > 解决方案 > 如何指定 Dockerfile 而不将其内联传递或托管在 git 服务器上

问题描述

在 Openshift Origin 中,我需要从本地文件系统中的 Dockerfile 构建和部署。它不托管在 git 服务器上。有人知道我如何在 URI 中指定它吗?

source:
  git:
    ref: master
    uri: https://github.com/some/project
  type: Git
strategy:
  dockerStrategy:
    from:
      kind: ImageStreamTag
      name: java-centos:oracle-8-jdk
  type: Docker

另外,我知道内联传递 Dockerfile,但我不想这样做。我希望能够指出 Dockerfile 在文件系统中的位置。

我也试过:

oc new-app --name blog --strategy=docker C:\my\folder\containing\Dockerfile

泰德

标签: openshiftopenshift-origin

解决方案


利用:

oc new-build --name blog --strategy=docker --binary

这将为二进制输入构建创建构建配置,但仅此而已。

每次你想运行一个构建,你会运行:

oc start-build blog --from-dir .

Dockerfile在文件和其他文件所在的目录中运行它。

第一次构建完成后,您可以运行:

oc new-app --image-stream blog --name blog

为应用程序创建部署。

如果它是一个 Web 应用程序,并且您想让它公开访问,那么您可以运行:

oc expose svc/blog

推荐阅读