【问题标题】:Docker: setting up `docker build` as a serviceDocker:将“docker build”设置为服务
【发布时间】:2020-08-10 07:07:26
【问题描述】:

我希望能够在给定 docker 文件的情况下即时构建 docker 容器。也就是说,给定一个 docker 文件,我希望能够将文件发送到远程“构建服务”,它以编程方式为我构建它。是否有提供此功能的托管或开源服务?

请注意,我并不是要在 CI 上构建图像,而是要在代码中执行如下操作:

def build_image(dockerfile_contents):
    resp = docker_service.build(dockerfile_contents)
    ...

一个简单的 rest API 将是完美的。有什么想法或想法吗?

【问题讨论】:

  • 那么resp 是什么?
  • 这并不重要。我正在寻找的是能够远程构建 docker 容器的 api。响应是图片的内容,还是容器的url太重要了。

标签: docker containers docker-registry docker-build container-registry


【解决方案1】:

我认为目前还没有这样的服务提供商。但是您可以使用Docker SDK 为您构建图像。你可以使用their official Python library

另外,你可以启发how Docker CLI itself triggers the builds

为了偏远和多云,请查看this article 提到的使用 Kubernetes 集群构建镜像的方式:您可以使用 K8s API 触发其容器构建您的 Docker 镜像的作业。

【讨论】:

    【解决方案2】:

    似乎最好的解决方案是自托管 kaniko 之类的东西。 @Ali Tou here 的帖子似乎是一个更复杂但可行的选择。

    【讨论】:

    • 这看起来很可爱。我自己也去看看!
    • @AliTou 哈哈哈!
    猜你喜欢
    • 1970-01-01
    • 2018-05-28
    • 2015-11-07
    • 2019-10-02
    • 2019-12-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-08-24
    相关资源
    最近更新 更多