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}