es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

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.

Tags:  , ,

Answer

  1. Avatar for 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.

Comments are closed.