Bluemix DevOps管道 - 如何为IBM Container Service构建器设置Dockerfile目录?

问题描述:

我正在尝试使用IBM Container Service构建器配置构建容器的DevOps管道构建阶段。Bluemix DevOps管道 - 如何为IBM Container Service构建器设置Dockerfile目录?

我试图建立一个在仓库里的一个子文件夹里面/server坐在码头工人形象:

$ tree keycloak 
keycloak 
├── adapter-wildfly 
│   ├─ ... 
├── server 
│   ├── Dockerfile 
│   ├── ... 
├── ... 

在我的构建脚本的顶部,我想我可以设置文件夹通过设置WORKSPACE环境变量:

export WORKSPACE=${WORKSPACE}/server 

但是,构建失败。在日志文件的末尾,我看到:

2017-07-06 15:39:32 UTC : Dockerfile not found in project 

包含我试图建立Dockerfile Git项目是:https://github.com/jboss-dockerfiles/keycloak


更新:

我现在在这项工作中已经提出了一个(令人讨厌的)解决方法,但我宁愿有一个更简单的解决方案。在我的部署脚本,我移动包含Dockerfile到父文件夹的文件夹:

... 

# hacky workaround to build a Dockerfile not in the top level folder 
mv ${WORKSPACE}/server/* . 

if [ -f Dockerfile ]; then 
... 

默认构建脚本将查找Dockerfile在当前目录中,但随后从完全合格的工作区构建它。因此,您需要更新WORKSPACE并将其更改为新的工作空间目录:

export WORKSPACE=${WORKSPACE}/server 
cd ${WORKSPACE}