【问题标题】:How can I run a Docker Hub container on Heroku via app.json?如何通过 app.json 在 Heroku 上运行 Docker Hub 容器?
【发布时间】:2019-10-02 23:13:56
【问题描述】:

我想为一个开源项目创建一个“部署到 Heroku”按钮。单击按钮时,我希望 Heroku 部署来自 Docker 中心的最新映像。如何通过我的 app.json 清单实现这一点?

app.json schema 允许我设置"stack": "container" 来指定我想要运行一个容器,但是我通过这个设置所能实现的只是通过 heroku 从源代码构建容器。 yml 文件。

来自我的 app.json

  "stack": "container",
  "formation": {
    "worker": {
      "quantity": 1
    }
  }

来自我的 heroku.yml

build: 
  docker:
    worker: Dockerfile

上述 app.jsonheroku.yml 文件在部署时从 master 成功构建容器。

如何在部署时从 Docker Hub 中提取,而不是从源代码构建?

【问题讨论】:

    标签: docker heroku


    【解决方案1】:

    您可以做到这一点的唯一方法是拥有一个 Dockerfile.heroku 文件,其中包含:

    FROM <your dockerhub image>
    

    然后,在heroku.yml

    build: 
      docker:
        worker: Dockerfile.heroku
    

    通过这个过程,Heroku 将始终从源代码构建。但它会通过从 DockerHub 中拉取镜像,丢弃其他所有内容来实现。

    没有办法使用 Heroku 的构建系统来仅拉取图像。

    【讨论】:

      猜你喜欢
      • 2020-11-28
      • 2019-03-05
      • 1970-01-01
      • 2018-03-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-07-22
      • 1970-01-01
      相关资源
      最近更新 更多