标签: google-container-registry

为部署的Kubernetes服务获取YAML?

我正在尝试将我的应用部署到运行在Google容器引擎中的Kubernetes.

该应用程序可以在以下网址找到:https://github.com/Industrial/docker-znc.

Dockerfile内置的图像谷歌集装箱登记.

我已经通过+按钮在Kubernetes中部署了应用程序.我没有这个YAML.

我在Kubernetes中插入了一个Secret,用于应用程序所需的PEM文件.

  1. 如何填写表格,获取Kubernetes创建的部署,服务Pod的YAML ?
  2. 如何将秘密放入我的Pod以供使用?

yaml docker kubernetes google-kubernetes-engine google-container-registry

64
推荐指数
14
解决办法
4万
查看次数


`docker-credential-gcloud`不在系统路径中

在对gcloud和docker进行最新更新后,我无法访问google容器存储库中的图像.本地运行时:gcloud auth configure-docker根据更新gcloud后的说明,我收到以下消息:

WARNING: `docker-credential-gcloud` not in system PATH.
gcloud's Docker credential helper can be configured but it will not work until this is corrected.
gcloud credential helpers already registered correctly.
Run Code Online (Sandbox Code Playgroud)

运行which docker-credential-gcloud回报docker-credential-gcloud not found.

我没有其他与gcloud相关的路径问题,因为我的生活无法弄清楚如何安装/添加docker-credential-gcloud到路径.这是我安装的(显示通过gcloud version):

Google Cloud SDK 197.0.0
beta 2017.09.15
bq 2.0.31
container-builder-local
core 2018.04.06
docker-credential-gcr
gsutil 4.30
Run Code Online (Sandbox Code Playgroud)

我也有Docker CE版本18.03.0-ce-mac60(23751).

这是我的$ PATH:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin

我还运行source /usr/local/Caskroom/google-cloud-sdk/latest/google-cloud-sdk/path.zsh.inc了原始的gcloud安装.

docker google-cloud-platform gcloud google-kubernetes-engine google-container-registry

36
推荐指数
3
解决办法
2万
查看次数

在没有gcloud客户端的情况下访问谷歌容器注册表

我有一个CoreOS docker主机,我想开始运行容器,但是在尝试使用docker命令从google容器私有注册表中获取映像时(https://cloud.google.com/tools/container-registry/),我得到了403.我做了一些搜索,但我不确定如何附加身份验证(或者在哪里生成用户+传递包以与docker login命令一起使用).

有没有人从谷歌私人容器中获取任何运气?我无法安装gcloud命令,因为coreos没有附带python,这是一个要求

docker run -p 80:80 gcr.io/prj_name/image_name
Unable to find image 'gcr.io/prj_name/image_name:latest' locally
Pulling repository gcr.io/prj_name/image_name
FATA[0000] HTTP code: 403
Run Code Online (Sandbox Code Playgroud)

更新:从@mattmoor和@Jesse获得答案后:

我正在拉的机器确实有devaccess

curl -H 'Metadata-Flavor: Google' http://metadata.google.internal./computeMetadata/v1/instance/service-accounts/default/scopes
https://www.googleapis.com/auth/bigquery
https://www.googleapis.com/auth/cloud-platform
https://www.googleapis.com/auth/compute
https://www.googleapis.com/auth/datastore
----> https://www.googleapis.com/auth/devstorage.read_only
https://www.googleapis.com/auth/logging.admin
https://www.googleapis.com/auth/sqlservice.admin
https://www.googleapis.com/auth/taskqueue
https://www.googleapis.com/auth/userinfo.email
Run Code Online (Sandbox Code Playgroud)

另外,我尝试使用_token登录方法

jenkins@riskjenkins:/home/andre$ ACCESS_TOKEN=$(curl -H 'Metadata-Flavor: Google' 'http://metadata.google.internal./computeMetadata/v1/instance/service-accounts/default/token' | cut -d'"' -f 4)
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100   142  100   142    0     0  14686      0 …
Run Code Online (Sandbox Code Playgroud)

google-compute-engine gcloud google-container-registry

31
推荐指数
3
解决办法
1万
查看次数

查找Google Container Registry公共图像列表

我在哪里可以找到GCR公共图像列表?如果是泊坞窗图像,我们可以在hub.docker.com中列出.但我找不到像GCR那样的东西.

image list public google-container-registry

29
推荐指数
3
解决办法
1万
查看次数

如何删除Google容器注册表中的推送图像

是否可以从Google容器注册表中删除推送的图像

我的意思是直接处理Google云端存储目录.

谢谢!

docker google-container-registry

16
推荐指数
4
解决办法
5937
查看次数

gcloud码头推挂

当我尝试将新的docker图像推送到gcr.io使用时gcloud docker push,它经常在停止之前取得一些进展:

$ gcloud docker push gcr.io/foo-bar-1225/baz-quux:2016-03-23
The push refers to a repository [gcr.io/foo-bar-1225/baz-quux]
762ab2ceaa70: Pushing [>                                              ]   556 kB/154.4 MB
2220ee6c7534: Pushing [===>                                           ]  4.82 MB/66.11 MB
f99917176817: Layer already exists
8c1b4a49167b: Layer already exists
5f70bf18a086: Layer already exists
1967867932fe: Layer already exists
6b4fab929601: Layer already exists
550f16cd8ed1: Layer already exists
44267ec3aa94: Layer already exists
bd750002938c: Layer already exists
917c0fc99b35: Layer already exists
Run Code Online (Sandbox Code Playgroud)

推送无限期地保持在这种状态(我已经离开它一小时而没有一个字节的进展).如果我按Ctrl-C终止此进程并重新运行它,它将完全相同,并再次没有进展.

我发现的唯一解决方法是重新启动计算机并重新运行"Docker Quickstart Terminal".然后推动成功.

是否存在停滞推送的解决方法,不需要经常重启我的计算机?(我在Mac OS X上.)

docker gcloud google-kubernetes-engine google-container-registry

15
推荐指数
1
解决办法
3284
查看次数

为谷歌容器注册表创建图像拉秘密不会过期?

我正在尝试让Kubernetes从另一个项目的Google Container Registry下载图像.根据文档,您应该使用以下方法创建图像拉秘密:

$ kubectl create secret docker-registry myregistrykey --docker-server=DOCKER_REGISTRY_SERVER --docker-username=DOCKER_USER --docker-password=DOCKER_PASSWORD --docker-email=DOCKER_EMAIL
Run Code Online (Sandbox Code Playgroud)

但是,我不知道DOCKER_USERDOCKER_PASSWORD我应该使用与谷歌容器注册认证?查看GCR文档,它说密码是您可以通过运行获得的访问令牌:

$ gcloud auth print-access-token
Run Code Online (Sandbox Code Playgroud)

这实际上有效......一段时间.问题似乎是这个访问令牌在(我相信是)一小时之后到期.我需要一个在创建图像拉秘密时不会过期的密码(或其他东西).否则Kubernetes群集在一小时左右后无法下载新图像.这样做的正确方法是什么?

google-cloud-platform kubernetes google-kubernetes-engine google-container-registry

15
推荐指数
3
解决办法
7545
查看次数

ImagePullSecrets GCR

我在deployment.yaml文件中使用ImagePullSecrets配置GCR时遇到问题.由于许可,它无法下载容器

Failed to pull image "us.gcr.io/optimal-jigsaw-185903/syncope-deb": rpc error: code = Unknown desc = Error response from daemon: denied: Permission denied for "latest" from request "/v2/optimal-jigsaw-185903/syncope-deb/manifests/latest".
Run Code Online (Sandbox Code Playgroud)

我确信我做错了但我遵循了这个教程(和其他人一样),但仍然没有运气.

https://ryaneschinger.com/blog/using-google-container-registry-gcr-with-minikube/

pod日志同样没用:

"syncope-deb" in pod "syncope-deployment-64479cdcf5-cng57" is waiting to start: trying and failing to pull image
Run Code Online (Sandbox Code Playgroud)

我的部署如下:

apiVersion: extensions/v1beta1
kind: Deployment
metadata:
  # Unique key of the Deployment instance
  name: syncope-deployment
  namespace: default
spec:
  # 3 Pods should exist at all times.
  replicas: 1
  # Keep record of 2 revisions for rollback
  revisionHistoryLimit: 2 …
Run Code Online (Sandbox Code Playgroud)

service-accounts kubernetes google-container-registry minikube

14
推荐指数
1
解决办法
634
查看次数

推送docker容器时,Google容器注册表访问被拒绝

我尝试使用本教程将我的docker容器推送到google容器注册表,但是当我运行时

gcloud docker push b.gcr.io/my-bucket/image-name
Run Code Online (Sandbox Code Playgroud)

我收到错误:

The push refers to a repository [b.gcr.io/my-bucket/my-image] (len: 1)
Sending image list
Error: Status 403 trying to push repository my-bucket/my-image: "Access denied."
Run Code Online (Sandbox Code Playgroud)

我找不到任何解释(没有-D, - debug, - verbose参数被识别),gcloud auth listdocker info告诉我我已连接到这两个服务.

我缺少什么?

docker google-cloud-platform gcloud google-container-registry

13
推荐指数
3
解决办法
1万
查看次数