【问题标题】:Setting up multi-stage Docker build on Heroku在 Heroku 上设置多阶段 Docker 构建
【发布时间】:2018-03-21 23:49:12
【问题描述】:

[编辑:看起来我的具体问题是如何将多阶段 Docker 构建推送到 Heroku]

我正在尝试使用spacy-api-docker Github 存储库设置 NLP 服务器。

项目 README 列出了一个没有包含语言模型的基本图像 (jgontrum/spacyapi:base_v2) 以及我正在寻找的英语语言模型图像 (jgontrum/spacyapi:en_v2)。

当我拉取并运行英语图像时,localhost API 工作正常,但是当我尝试从克隆的 Github 存储库构建图像时,主 Dockerfile 似乎只构建基本模型(这是无用的),而当我按照this heroku docker documentation 和this other third party tutorial 中列出的步骤将容器推送到 Github,它似乎只使用了那个基础 Dockerfile——我可以让 api 运行,但没有模型就没有用。

存储库在子文件夹中还有一堆较短的特定于语言的 Dockerfile,我猜需要以某种方式指定这些文件?无论如何,在主 Dockerfile 之后粘贴英文 Dockerfile 是行不通的。

我的猜测是我可能不得不:

  • 一个。弄清楚如何将图像从 Docker hub 推送到 Heroku,而无需 一个存储库(我提取的唯一完全工作的图像 直接从码头)
  • 乙。弄清楚如何从 提取图像,然后我可以使用 heroku 将其制作成 Heroku 项目 创建
  • c。弄清楚如何在我构建时指定 :en_v2 部分 来自存储库的 Heroku(那是 Docker 标签吗?不知何故 指定要使用哪个额外的 Dockerfile?)
  • d.查看多阶段 Docker 构建

我是编程新手,并且已经为此苦苦挣扎了一段时间,因此非常感谢任何指点(请原谅我使用不当的任何术语,我的词汇量对于这些东西来说非常基础)。

谢谢!

【问题讨论】:

    标签: docker github heroku dockerfile spacy


    【解决方案1】:

    如果您想知道如何设置多阶段构建以及如何构建,我可以帮助您的只是显示示例代码。

    我也在 Docker 上使用多阶段构建,因为这个系统需要多个容器,下面只是向您展示相关的源代码。

    我没有仔细阅读,所以如果我错过了这一点,请忽略我。

    【讨论】:

    • 谢谢,这很有帮助。我重新尝试了一遍,它成功了,我过去的所有尝试都在破坏构建。
    猜你喜欢
    • 2020-07-13
    • 2022-11-25
    • 1970-01-01
    • 2021-08-06
    • 1970-01-01
    • 2019-09-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多