Watch at EaseHistorias. Respuestas. Perspectiva.

Tecnología · GUÍA PRÁCTICA

¿Docker da invalid reference format en PowerShell? Localiza el argumento de imagen real

Un montaje o una continuación rotos pueden desplazar otro valor a IMAGE. Revisa versión y límites de argumentos antes de renombrar imágenes o borrar datos.

Ilustración editorial original: empareja opciones y valores antes de IMAGE.
Ilustración editorial original: empareja opciones y valores antes de IMAGE. Watch at Ease

El error no demuestra que sea inválido el nombre que pretendías usar. Docker run espera opciones, imagen y comando del contenedor. Las comillas o continuaciones de PowerShell pueden colocar otro valor en la posición de imagen. Investiga ese límite antes de reconstruir o limpiar.

Identificar shell y ejecutable

Registra $PSVersionTable.PSVersion y Get-Command docker -All en la sesión fallida. Desde 7.3 añade $PSNativeCommandArgumentPassing. Windows PowerShell 5.1 y versiones nuevas no comparten todo el comportamiento; una variable ausente no prueba modo Standard.

Guarda el comando sin secretos y sus saltos de línea. Distingue un -v no reconocido por PowerShell de un error de referencia Docker. No publiques entornos completos, contraseñas ni credenciales de registro.

Mostrar IMAGE sin iniciar un contenedor

Sigue docker run [OPTIONS] IMAGE [COMMAND] [ARG...] y empareja opciones y valores. Un fragmento de montaje dividido puede ocupar IMAGE. Los indicadores posteriores suelen ir al comando interno.

Ejemplo sin ejecución: $image = 'example.com/team/app:Release_1' y $dockerArgs = @('run','--rm',$image). Examina cada elemento y añade por separado los valores originales sin secretos. Es un nombre ficticio de sintaxis, no una imagen publicada. No llames a docker para imprimirlo: la matriz tampoco prueba los argumentos recibidos por un programa nativo.

Reconstruir comillas para esta sesión

Escribe de nuevo una línea mínima. Un espacio después del acento grave de continuación de PowerShell la rompe. La barra inversa Bash y el circunflejo cmd.exe no son equivalentes. Mantén unido cada argumento con espacios.

Microsoft documenta Legacy, Standard y Windows desde el cambio de 7.3. No cambies el modo global como primera reparación. --% limita la expansión normal y termina al llegar a salto de línea o tubería; no arregla universalmente rutas dinámicas. Un envoltorio .cmd introduce otra capa frente a docker.exe directo.

Validar referencia y operación prevista

Compara el token real con la referencia exacta del editor. La ruta de repositorio usa barras normales y letras minúsculas; las etiquetas tienen otra gramática y pueden incluir mayúsculas. No conviertas todo a minúsculas, cambies etiquetas ni quites digests para ocultar el error.

Si quedan dudas, usa un inspector de argumentos confiable con valores sintéticos sin secretos en el mismo shell y envoltorio; Microsoft muestra TestExe. Después realiza solo la operación prevista y autorizada y verifica su resultado. Parsear no prueba montaje, autenticación ni salud de aplicación. No probamos Windows ni ejecutamos contenedores; borrar imágenes, volúmenes o credenciales no repara la separación de argumentos.

Ilustración editorial original: versión, modo y envoltorio se verifican por separado.
Ilustración editorial original: versión, modo y envoltorio se verifican por separado. Watch at Ease