google cli arch docker google-cloud-platform gcloud google-container-engine google-container-registry

docker - cli - gcloud console windows



`docker-credential-gcloud` no está en el sistema PATH (3)

Nunca encontré una manera de resolver directamente el problema de docker-credential-gcloud , pero lo siguiente me puso en marcha nuevamente. ADVERTENCIA: lo siguiente eliminará todas sus imágenes de docker existentes e instalará un montón de utilidades de gcloud:

  1. gcloud components install docker-credential-gcr ,
  2. Reinicie el terminal completamente
  3. docker-credential-gcr configure-docker .
  4. screen ~/Library/Containers/com.docker.docker/Data/com.docker.driver.amd64-linux/tty

  5. umount /var/lib/docker/overlay2

  6. rm -rf /var/lib/docker
  7. Reinicie el terminal completamente.

Después de las últimas actualizaciones de gcloud y docker, no puedo acceder a las imágenes en mi repositorio de Google Container. Localmente cuando ejecuto: gcloud auth configure-docker según las instrucciones después de actualizar gcloud, recibo el siguiente mensaje:

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.

La ejecución de la which docker-credential-gcloud devuelve docker-credential-gcloud not found .

No tengo otros problemas de ruta relacionados con gcloud y por mi vida no puedo averiguar cómo instalar / agregar docker-credential-gcloud a la ruta Esto es lo que he instalado (mostrado a través de la 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

También tengo Docker CE versión 18.03.0-ce-mac60 (23751).

Aquí está mi $ PATH: /usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin

También corrí la source /usr/local/Caskroom/google-cloud-sdk/latest/google-cloud-sdk/path.zsh.inc en la instalación original de gcloud.


Realmente parece ser algo con el Casco Homebrew. Desinstalé el cofre y luego reinstalé el Google Cloud SDK descargando manualmente la bola tar y ejecutando el script de instalación empaquetado como se describe allí.

Ahora docker-credential-gcloud está en mi camino:

$ which docker-credential-gcloud /Users/moritz/google-cloud-sdk/bin/docker-credential-gcloud


Aviso : Todos los docker-credential-gcr continuación se pueden reemplazar con docker-credential-gcloud . Creo que son versiones diferentes de gcloud, podría estar equivocado.

Usé Homebrew Cask para instalar gcloud también. Instalé docker-credential-gcr con

$ gcloud components install docker-credential-gcr

Y luego, como usted dijo, which docker-credential-gcr no le dio nada.

Así que encontré which gcloud para encontrar que hay un enlace simbólico a gcloud en /usr/local/bin . Este enlace simbólico es creado por Homebrew cuando instaló gcloud en primer lugar. Ahora docker-credential-gcr no fue instalado por Homebrew sino por gcloud en sí, por lo que no hay un enlace simbólico.

Llamé a readlink /usr/local/bin/gcloud y descubrí que gcloud está instalado en /usr/local/Caskroom/google-cloud-sdk/latest/google-cloud-sdk/bin/ .

Entonces:

$ ls /usr/local/Caskroom/google-cloud-sdk/latest/google-cloud-sdk/bin

Allí deberías ver el docker-credential-gcr listado allí.

Simplemente lo /usr/local/bin a /usr/local/bin :

$ ln -s /usr/local/Caskroom/google-cloud-sdk/latest/google-cloud-sdk/bin/docker-credential-gcr /usr/local/bin/

Entonces corre:

$ docker-credential-gcr configure-docker

Debería tener éxito.