Aviso: En los próximos meses, reorganizaremos el sitio de documentación de App Engine para facilitar la búsqueda de contenido y alinearlo mejor con el resto de los productos de Google Cloud. El mismo contenido estará disponible, pero la navegación ahora coincidirá con el resto de los productos de Cloud. Si tienes comentarios o preguntas mientras navegas por el sitio, haz clic en Enviar comentarios.

El entorno de ejecución de Go

Organiza tus páginas con colecciones Guarda y categoriza el contenido según tus preferencias.

Descripción general

El entorno de ejecución de Go en el entorno flexible es la pila de software encargada de compilar y ejecutar tu código.

Para elegir el entorno de ejecución de Go en el entorno flexible, agrega dos líneas al archivo app.yaml.

runtime: go
env: flex

Los entornos de ejecución en el entorno flexible se compilan mediante Docker. El código fuente para el entorno de ejecución de Go está disponible en GitHub.

Elige una versión de Go

El entorno de ejecución de Go es compatible con estas versiones:

  • 1.15
  • 1.14
  • 1.13
  • 1.12
  • 1.11 (predeterminado)
  • 1.10
  • 1.9

Los desarrolladores pueden elegir un version de Go específico con el formato go1.x en el archivo de configuración app.yaml. Si no se especifica ninguna versión, la versión predeterminada de go1.11 se seleccionará de forma automática.

La aplicación usa la última versión estable que se especifica en tu archivo app.yaml. App Engine se actualiza de forma automática a nuevas revisiones de parches; sin embargo, no se actualizará automáticamente ante una nueva versión principal.

Por ejemplo, la aplicación podría implementarse en Go 1.14.10 y, luego, actualizarse de forma automática a Go 1.14.11, pero no se actualizará a la versión principal de Go 1.15 de forma automática.

Elige la versión del entorno de ejecución de Gogo1.13 como se muestra a continuación enapp.yaml genera la última versión de 1.13 disponible, por ejemplo, 1.13.8.

  runtime: go1.13
  env: flex

Importa paquetes

El código se compila cuando implementas tu app en App Engine. Cuando ejecutas el comando de implementación, las dependencias de la aplicación primero se recopilan desde el GOPATH local y, luego, se envían al servidor de compilación. Cualquier dependencia que falte, por ejemplo, bibliotecas de terceros, dará como resultado fallas de compilación.

Para evitar fallas de compilación y asegurarte de que todas las dependencias de la aplicación se implementen con el código, debes probar la aplicación localmente antes de implementarla.

Extiende el entorno de ejecución

Si deseas obtener instrucciones para extender y personalizar el entorno de ejecución de Go, lee sobre el compilador del entorno de ejecución de Go en GitHub.

Servidor de metadatos

Cada instancia de tu aplicación puede usar el servidor de metadatos de Compute Engine para consultar información acerca de la instancia, incluidos el nombre del host, la dirección IP externa, el ID de la instancia, los metadatos personalizados y la información de la cuenta de servicio. App Engine no te permite establecer metadatos personalizados para cada instancia; sin embargo, puedes definir metadatos personalizados de todo el proyecto y leerlos desde las instancias de App Engine y Compute Engine.

Usa el paquete cloud.google.com/go/compute/metadata para acceder al servidor de metadatos.