Saltar al contenido principal

Mantenerlo actualizado

El agente no se actualiza solo. La versión que instalas es la que sigues corriendo hasta que la reemplazas. Actualizar es un pull y una recreación, y toma cerca de un minuto.

Usa la misma contraseña

Recrear el contenedor reutiliza el token guardado en el volumen neurogrid-data, y ese token está cifrado con tu contraseña. Una contraseña distinta no puede leerlo y la máquina tendría que registrarse de nuevo con un token nuevo.

Actualizar​

docker pull ghcr.io/neurogrid-ai-exchange/neurogrid-agent:latest

docker stop neurogrid-agent
docker rm neurogrid-agent

docker run -d --name neurogrid-agent \
--gpus all --restart unless-stopped \
--log-driver json-file \
--log-opt max-size=10m \
--log-opt max-file=3 \
--dns 1.1.1.1 --dns 8.8.8.8 \
-v neurogrid-data:/data \
-v /var/run/docker.sock:/var/run/docker.sock \
-v /var/lib/neurogrid/workloads:/var/lib/neurogrid/workloads \
-e AGENT_ENCRYPTION_PASSWORD="$AGENT_ENCRYPTION_PASSWORD" \
ghcr.io/neurogrid-ai-exchange/neurogrid-agent:latest

Sin --token esta vez. El guardado sigue ahí.

Con Compose es más corto:

docker compose pull
docker compose up -d

Hazlo mientras estás inactivo​

Recrear el contenedor mata cualquier trabajo que esté corriendo, y un trabajo que muere a medias es un fallo en tu historial. Revisa primero:

docker ps --filter "name=neurogrid-job" --format '{{.Names}}'

Si no hay salida, nada está sirviendo y eres libre de actualizar. Si hay un trabajo en curso, espera a que termine o pausa el listado en la consola y actualiza cuando se vacíe.

En qué versión estoy​

docker inspect neurogrid-agent --format '{{.Config.Image}}'
docker images --digests | grep neurogrid-agent

:latest no dice mucho por sí solo — compara el digest contra la página del paquete para ver si existe una versión más nueva.

¿Debería actualizar automáticamente?​

Puedes, con una herramienta como Watchtower, pero piensa antes en el trade-off: una actualización sin supervisión que cae a mitad de un trabajo lo mata. Si la automatizas, limítala al contenedor del agente y dale un horario durante las horas en que tu tarjeta suele estar inactiva.

Limpiar imágenes viejas​

Cada actualización deja atrás la imagen anterior. Son pequeñas (~250 MB), pero se acumulan:

docker image prune -f

Eso elimina solo las imágenes sin etiqueta. No tocará la imagen del motor vLLM (~20 GB) ni tu caché de modelos de Hugging Face, y no quieres que lo haga — eso es lo que hace que el próximo trabajo arranque rápido.