Home
» Consejos PC
»
Cómo solucionar el error Docker: Formato de referencia no válido
Cómo solucionar el error Docker: Formato de referencia no válido
Docker facilita la creación, ejecución y gestión de contenedores. Sin embargo, puede aparecer un error de "Formato de referencia no válido" al ejecutar o crear una imagen. En la mayoría de los casos, esto se debe a un pequeño error de formato en el nombre o la etiqueta de la imagen. Por ejemplo, el error podría deberse a mayúsculas, caracteres especiales o valores faltantes. Esta guía explicará las causas comunes de este error y cómo solucionarlo para evitar que vuelva a ocurrir.
Corregir el error "Formato de referencia no válido"
Descubramos las causas más comunes del error "Formato de referencia no válido" y cómo solucionarlo:
Letras mayúsculas en los nombres de las imágenes
Docker requiere que los nombres de las imágenes estén en minúsculas. Incluso una sola letra mayúscula puede causar errores de formato. Por ejemplo, ejecutar el siguiente comando generará un error:
docker pull NGINX
Los nombres de los archivos deben estar en minúsculas
Para evitar este error, verifique siempre que el nombre de su imagen esté en minúsculas antes de ejecutar el comando.
docker pull nginx
Utilice letras minúsculas
Carácter especial o no válido
A veces, los usuarios añaden accidentalmente caracteres que Docker no permite. Estos incluyen símbolos @, espacios o caracteres copiados de un sitio web o documento que parecen normales, pero no lo son.
Por ejemplo, el siguiente comando contiene el carácter especial @, lo que provocará el siguiente error:
docker run ubuntu@:latest
Error de carácter especial
Para corregir este error, asegúrese de que el comando no contenga caracteres adicionales ni errores de formato. Puede usar un editor de texto simple para revisar y corregir el comando (si es necesario):
docker run ubuntu:latest
Evite los caracteres especiales
Colon sin etiqueta
Uno de los errores más comunes es colocar dos puntos al final del nombre de la imagen, pero no incluir la etiqueta. Por ejemplo, probemos el siguiente comando para extraer Node:
docker pull node:
Docker espera un valor después de los dos puntos, como latest, 18-alpine o cualquier otra etiqueta válida. Si no se proporciona ningún valor, el nombre de la imagen se considera incompleto y genera un error de "Formato de referencia no válido".
Colon sin etiqueta
Para corregir este error, agregue una etiqueta adecuada después de los dos puntos para que el nombre de la imagen sea completo y válido:
docker pull node:latest
Agregar etiquetas después de los dos puntos
La ruta del archivo o el montaje del volumen contienen espacios
Al incluir una ruta de archivo con espacios, especialmente con opciones como -v (montaje de volumen), Docker puede malinterpretar partes de la ruta como argumentos independientes o incluso como parte del nombre de la imagen. Como resultado, podría encontrar resultados inesperados como el que se muestra a continuación:
docker run -v /home/user/My Folder:/app ubuntu
Espacios en los nombres de archivos
Para evitar esto, siempre encierre la ruta del archivo entre espacios entre comillas dobles, como se muestra a continuación:
docker run -v "/home/user/My Folder:/app" ubuntu
Reemplace “/home/user/Mi carpeta” con la ruta real al directorio que desea montar en el contenedor.
Uso inapropiado de variables
Al trabajar con Docker, es habitual usar variables en los comandos, especialmente al especificar versiones de imágenes. Sin embargo, si una variable como $VERSION no se configura correctamente, Docker puede encontrar problemas como el error "Formato de referencia no válido".
Por ejemplo, ejecute el siguiente comando para extraer Ubuntu de Docker Hub:
docker pull ubuntu:$VERSION
Aquí, $VERSION debería representar la versión de la imagen de Ubuntu que se desea extraer. Sin embargo, si no se le asigna un valor, Docker interpretará el comando como "docker pull ubuntu:". Esto genera un nombre de imagen inválido, ya que termina con dos puntos y no tiene la etiqueta de versión requerida.
Uso incorrecto de variables
Para evitar esto, asegúrese de que todas las variables utilizadas en el comando estén correctamente definidas. En Linux, puede definir una variable con la siguiente sintaxis.
$VERSION=latest
Luego, extraiga la versión especificada ejecutando el siguiente comando.
docker pull ubuntu:$VERSION
En Windows CMD, debe usar la palabra clave set para definir una variable (como versión) y luego usar la sintaxis %VARIABLE% para referirse a ella en comandos como docker pull.
set VERSION=latest
docker pull ubuntu:%VERSION%
Aquí, $VERSION contiene el valor más reciente, por lo que Docker extrae la imagen ubuntu:latest sin problemas. También puedes asignar una versión específica, como la 18.04, si es necesario.
Definir las variables correctamente
Problema de copiar y pegar
A veces, los usuarios copian comandos de tutoriales o documentación en línea. Estos comandos copiados pueden contener caracteres ocultos, como espacios, signos de puntuación no ingleses o comillas especiales. Estos caracteres pueden corromper silenciosamente los comandos de Docker.
Para evitar esto, es mejor escribir el comando usted mismo cuando sea posible o pegarlo primero en un editor de texto simple para eliminar el formato no deseado.
Ahora que conoces las causas comunes del error "Formato de referencia no válido" en Docker y cómo solucionarlo, estarás en el buen camino para evitar este problema en el futuro. Desde comprobar las mayúsculas y minúsculas hasta asegurarte de que tus variables estén configuradas correctamente, estos sencillos consejos pueden ahorrarte mucho tiempo y frustraciones. Si quieres profundizar en el tema, también puedes aprender a etiquetar y enviar tus imágenes personalizadas de Docker al registro, o a limpiar imágenes no utilizadas para mantener tu sistema limpio.