google-app-engine - Google App Engine 是否可以从私有 Docker 注册表中提取?
问题描述
使用“自定义运行时灵活环境”选项将应用程序部署到 Google App Engine 需要在Dockerfile
Google 端构建 docker 映像。我想在Dockerfile
FROM
子句中从我的私有 Docker 注册表中指定一个图像。但是,我找不到任何文档或看到任何明显的选项来解释我将在哪里为私有注册表指定凭据,或调用docker login
. 没有这个,gcloud app deploy
当然,尝试在谷歌端拉图像是失败的。
例如:
$ gcloud app deploy
...
Beginning deployment of service
...
Sending build context to Docker daemon 3.072kB
Step 1/1 : FROM registry.gitlab.com/my/private/registry/image:latest
Get https://registry.gitlab.com/v2/my/private/registry/image/manifests/latest: denied: access forbidden
在Dockerfile
这种情况下,这只是:
FROM registry.gitlab.com/my/private/registry/image:latest
有谁知道这是否可以通过 Google App Engine 实现,如果可以,如何配置它?
解决方案
有这篇 Stackoverflow帖子已经涵盖了该主题并提供了答案。
事实上,如果您将图像上传到 Google Container Registry,它将是私有的,您将能够通过使用 IAM 权限控制谁有权访问 GCR。之后,您可以在 App Engine 部署中使用它:
gcloud app deploy --image-url $GCR_IMAGE_PATH
推荐阅读
- python - 如何避免 Python 挂在 subprocess.run()
- python-3.x - 参数必须是字符串或数字问题,而不是“类型”-Pyspark
- php - CRM 使用 PHP CURL 显示数据
- php - 如何在同一页面上的路由/控制器中使用更多引导模型进行操作(Laravel)
- javascript - 如何取消选择除不应在 echarts 中取消选择的另一个图例之外的所有图例
- enums - 为 Vaadin 14 Web 应用程序中的枚举支持的单选按钮生成标签
- javascript - d3 图表在 X 轴刻度中显示一些十进制值,而不是显示日期和时间
- powershell - 通过提供 fullName 和 manager 全名获取 AD 用户
- sql - 那么如何通过计算在表格上添加一列
- types - 在类型文件中用空格声明函数