为特定上下文构建一个Heroku Docker映像

时间:2019-02-03 08:00:25

标签: docker heroku

使用heroku.yml开发人员预览(https://devcenter.heroku.com/articles/build-docker-images-heroku-yml)时。当前是否有任何方法可以指定docker build上下文以及dockerfile?

我要模拟的命令是:

docker build -f cmd/api/Dockerfile .
  

注意:我在此处提供构建上下文的路径.

当前,我能够成功运行以下内容:

build:
  docker:
    web: cmd/api/Dockerfile

或者,使用更明确的版本:

build:
  docker:
    web:
      dockerfile: cmd/api/Dockerfile

基于target a stage from a multi-stage build的能力,我的假设是,我也可以像context作为构建字段一样提供docker-compose

build:
  docker:
    web:
      dockerfile: cmd/api/Dockerfile
      context: .

但是,这会从Heroku中返回以下错误响应:

remote: Building source:
remote: === Fetching app code
remote:
remote: =!= There were problems parsing your heroku.yml. We've detected the following issues:
remote:
remote: build.docker.web.context in body is a forbidden property
remote: Verifying deploy...
remote:
remote: !       Push rejected to docker-build-context-test.
remote:

这是我可以实现的已知功能吗?我很有可能需要发送功能请求,因为该功能是开发人员预览版,但感觉就像他们应该包含的那样。

希望你们有一些答案!

1 个答案:

答案 0 :(得分:1)

https://devcenter.heroku.com/articles/build-docker-images-heroku-yml

  

Docker构建上下文始终设置为包含Dockerfile的目录,并且不能独立配置。