【问题标题】:which GCP Compute Engine instance to use to build Docker image?使用哪个 GCP Compute Engine 实例来构建 Docker 映像?
【发布时间】:2019-05-08 21:02:19
【问题描述】:

数据科学家使用哪个 GCP Compute Engine 实例来构建 Docker 映像并将其推送到 GCP Container Registry 上?

  1. 我的笔记本电脑上不允许安装 Docker
  2. 我无法在 CloudShell 上构建它,因为我的映像太大 (>5 GB)
  3. 我可以在 Debian/Unbuntu VM 上完成,但我需要安装 Docker(我需要重新安装 SDK,安装 Docker 并添加用户)
  4. 我可以在 Container-Optimized OS VM 上执行此操作,但需要安装 SDK(需要将映像推送到 CP Container Registry)以及 python 2

还有其他更简单的选择吗?已经预先安装了所有东西(Docker 和 SDK)?人们一般如何做到这一点?在选择 Compute Engine 实例时我还应该考虑其他几点吗?

【问题讨论】:

  • 人们花时间安装和设置一切。 Google Cloud Build 是用于构建容器的出色服务,但您仍然需要 Docker 或同等产品来运行和测试您的容器。如果您也是开发人员,那么您需要更多的安装和设置。鉴于大量的选择,...
  • 伟大的约翰,我以为 Google Cloud Build 正在我的 CloudShell 中构建映像。正如你提到的,我仍然需要一个地方来运行容器进行测试。

标签: docker build google-cloud-platform google-compute-engine google-container-registry


【解决方案1】:

看看谷歌Cloud Build

有了它,您只需提供 Dockerfile(和任何源文件)就可以构建(除其他外)容器映像。

该服务将构建您的映像并将其推送到 Google Container Registry:

https://cloud.google.com/cloud-build/docs/quickstart-docker

【讨论】:

  • 这是构建映像的绝佳解决方案,但正如 John 所提到的,我需要一个地方来运行和测试容器。
  • Cloud Build 是一个开放式工具。您可以在 (cloudbuild.yaml) 脚本中包含构建测试、linting 等。使用 Cloud Build 构建映像后,您只需将其拉到 Compute Engine(使用 Docker 引擎)上的容器操作系统实例或其他 VM 并在那里执行任意任务。您无需在本地安装 Docker Engine。
  • 感谢您提供这些信息。这正是我想做的。我会听从你的建议。
  • 您甚至可以从 Cloud Build 将映像部署到 GCE 实例;-) 如果您遇到挑战,请给我发电子邮件 (@google.com)。我很乐意提供帮助!
猜你喜欢
  • 2022-11-03
  • 1970-01-01
  • 2020-03-31
  • 2019-02-15
  • 1970-01-01
  • 2019-05-06
  • 1970-01-01
  • 2020-09-01
  • 2020-01-05
相关资源
最近更新 更多