Casos de uso y ejemplos de Gordon
Gordon maneja los flujos de trabajo de Docker a través de una conversación natural. En Docker Desktop, Gordon está disponible en la barra lateral para sesiones abiertas y desde puntos de entrada contextuales en vistas como Containers (Contenedores), Images (Imágenes), Builds (Compilaciones) y Volumes (Volúmenes). Al seleccionar a Gordon desde una de estas vistas, se abre una conversación precargada con el contexto del elemento que estás viendo. Puedes hacer las mismas preguntas desde la CLI con docker ai.
Depurar un contenedor que falla
Estás en la vista de Containers y un contenedor se ha caído o se comporta de forma inesperada. Abre a Gordon desde la fila del contenedor para preguntar sobre el estado y la configuración de ese contenedor:
- "¿Por qué finalizó este contenedor?"
- "¿Qué variables de entorno están configuradas en este contenedor?"
- "¿Cuánto tiempo estuvo en ejecución este contenedor?"
- "¿Qué ajustes de seguridad se aplican a este contenedor?"
Desde la CLI:
$ docker ai "why is my postgres container crashing on startup?"
Depurar una compilación fallida
Estás en la vista de Builds observando una compilación que falló o que es más lenta de lo esperado. Abre a Gordon desde la compilación para inspeccionar el Dockerfile, los argumentos de compilación y el comportamiento de la caché:
- "¿Por qué falló esta compilación?"
- "¿Cómo puedo mejorar el uso de la caché para esta compilación?"
- "¿Qué instrucciones de Dockerfile se utilizaron?"
- "¿Qué argumentos de compilación se utilizaron?"
Desde la CLI:
$ docker ai "my build is failing at the pip install step, what's wrong?"
Inspeccionar una imagen
Estás en la vista de Images y deseas comprender qué hay en una imagen antes de ejecutarla, o quieres evaluar una imagen base:
- "¿Cómo ejecuto esta imagen en la CLI?"
- "¿Qué variables de entorno están configuradas?"
- "¿Qué entrypoint está configurado?"
- "¿Cuál es la arquitectura base de esta imagen?"
- "¿Existe una versión más ligera de esta imagen?"
Desde la CLI:
$ docker ai "compare my python:3.12 image to python:3.12-slim"
Gestionar volúmenes y recursos
Desde la vista de Volumes, pregúntale a Gordon sobre qué está almacenado, qué contenedores utilizan un volumen o cómo hacer una limpieza. Desde cualquier vista, utiliza la barra lateral de Gordon para inspeccionar tu entorno más amplio:
- "¿Qué contenedores están utilizando este volumen?"
- "Muéstrame todos mis contenedores y su estado"
- "¿Cuánto espacio en disco está utilizando Docker?"
- "Muestra mis imágenes ordenadas por tamaño"
Desde la CLI:
$ docker ai "clean up all unused Docker resources"
Compilar y contenedorizar
Para proyectos nuevos, inicia una conversación en la barra lateral de Gordon o a través de docker ai desde el directorio de tu proyecto. Gordon lee tu directorio de trabajo y propone los archivos correctos:
- "Contenedorizar mi aplicación Node.js"
- "Crear un docker-compose para mi stack"
- "Configurar un entorno de desarrollo con Postgres y Redis"
Desde la CLI:
$ cd ~/mi-proyecto
$ docker ai "create a Dockerfile for this application"
Desarrollar y optimizar
Pídele a Gordon que revise y mejore Dockerfiles o definiciones de servicios existentes. Puedes comenzar desde la vista de Images (para una imagen que ya hayas compilado) o desde la barra lateral de Gordon con el contexto de tu proyecto:
- "Optimizar este Dockerfile"
- "Añadir una prueba de salud (health check) a mi servicio"
- "Hacer mi Dockerfile más seguro"
Desde la CLI:
$ docker ai "rate my Dockerfile and suggest improvements"
Aprender Docker
Para preguntas conceptuales, utiliza la barra lateral de Gordon o la CLI. Gordon explica los conceptos basándose en tu propio entorno, no con respuestas genéricas:
- "¿Qué es un volumen de Docker?"
- "Explica las compilaciones multi-etapa (multi-stage builds)"
- "¿Cómo funciona la red en Docker?"
Desde la CLI:
$ docker ai "what's the difference between COPY and ADD in a Dockerfile?"
Escribir prompts eficaces
Sé específico:
- Incluye el contexto relevante: "mi contenedor de postgres" en lugar de "la base de datos".
- Declara tu objetivo: "hacer mi compilación más rápida" en lugar de "optimizar".
- Incluye los mensajes de error al depurar.
Gordon funciona mejor cuando describes lo que deseas lograr en lugar de cómo hacerlo. Gordon mantiene el contexto a lo largo de una conversación, por lo que puedes realizar un seguimiento con aclaraciones o hacer preguntas relacionadas sin tener que repetirte.
Contexto del directorio de trabajo
Al usar docker ai en la CLI, Gordon utiliza tu directorio de trabajo actual como contexto predeterminado para las operaciones de archivos. Cambia al directorio de tu proyecto antes de iniciar a Gordon para asegurarte de que tenga acceso a los archivos correctos:
$ cd ~/mi-proyecto
$ docker ai "review my Dockerfile"
También puedes sobrescribir el directorio de trabajo con el flag -C. Consulta Usar Gordon a través de la CLI para obtener más detalles.