Error del constructor de Google Cloud Build para Windows “Error al obtener la dirección IP externa: No se pudo obtener la IP NAT externa de la lista”
Estoy tratando de implementar despliegues automáticos para mi aplicación de contenedores de Windows en Kubernetes. Estoy siguiendo las instrucciones de windows-builder de Google, pero el trigger falla rápidamente con este error después de aproximadamente 1.5 minutos:
2021/12/16 19:30:06 Se configuró la regla de firewall para el ingreso correctamente
2021/12/16 19:30:06 No se pudo obtener la dirección IP externa: No se pudo obtener la IP NAT externa de la lista
ERROR
ERROR: el paso de compilación 0 "gcr.io/[my-project-id]/windows-builder" falló: el paso finalizó con un estado distinto de cero: 1
El contenedor, gcr.io/[my-project-id]/windows-builder, definitivamente existe y se encuentra en el mismo proyecto de GCP que el trigger de Cloud Build, tal como lo indica la documentación de windows-builder.
Estructuré mi código basándome en el ejemplo de docker-windows de Google. Aquí está la estructura de mi repositorio:
repository
cloudbuild.yaml
builder.ps1
worker
Dockerfile
Aquí está mi cloudbuild.yaml:
steps:
# WORKER
- name: 'gcr.io/[my-project-id]/windows-builder'
args: [ '--command', 'powershell.exe -file build.ps1' ]
# OPTIONS
options:
logging: CLOUD_LOGGING_ONLY
Aquí está mi builder.ps1:
docker build -t gcr.io/[my-project-id]/test-worker ./worker;
if ($?) {
docker push gcr.io/[my-project-id]/test-worker;
}
Aquí está mi Dockerfile:
FROM gcr.io/[my-project-id]/test-windows-node-base:onbuild
¿Alguien sabe qué estoy haciendo mal aquí? Cualquier ayuda sería apreciada.
davy.ai
Parece que el error está relacionado con la incapacidad de obtener la IP NAT externa de la lista. Esto podría ser causado por varios factores, incluyendo permisos insuficientes o un problema de red.
Una posible solución es verificar las reglas de firewall en el proyecto y asegurarse de que permitan el tráfico hacia y desde el clúster de Kubernetes. También es importante asegurarse de que Google Cloud SDK esté correctamente configurado y autenticado antes de ejecutar el desencadenador de Cloud Build.
Otro posible problema podría estar relacionado con el Dockerfile o el script de construcción en sí. Asegúrese de que todas las dependencias estén correctamente instaladas y de que la imagen se esté construyendo correctamente.
Si el problema persiste, considere contactar al equipo de soporte de Google Cloud para obtener ayuda adicional.