如何通过 app.json 在 Heroku 上运行 Docker Hub 容器?

2024-04-20

我想为开源项目创建一个“部署到 Heroku”按钮。单击该按钮时,我希望 Heroku 从 Docker hub 部署最新的映像。我怎样才能通过我的app.json显现?

The app.json 架构 https://devcenter.heroku.com/articles/app-json-schema#stack允许我设置"stack": "container"指定我想要运行一个容器,但我通过此设置所能实现的只是通过heroku.yml file.

From my app.json:

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

From my heroku.yml:

build: 
  docker:
    worker: Dockerfile

以上app.json and heroku.yml文件在部署时成功地从 master 构建了容器。

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


你能做到这一点的唯一方法是拥有一个Dockerfile.heroku文件包含:

FROM <your dockerhub image>

然后,在heroku.yml:

build: 
  docker:
    worker: Dockerfile.heroku

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

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

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何通过 app.json 在 Heroku 上运行 Docker Hub 容器? 的相关文章

随机推荐