Go
Detetado a partir de go.mod. A aplicação é compilada com a toolchain publicada mais recente.
Guias de deploy passo a passo: Go.
Consulte Buildpackspara ver como funcionam a deteção e a política de versões.
Deteção
go.mod no Base directory.
Versões
A versão por omissão é o Go 1.26. As toolchains publicadas, à data de setembro de 2026, incluem 1.25-1.27. Na Nodion, o Go usa sempre a toolchain publicada mais recente. Um projeto com uma linha go mais antiga em go.mod continua a compilar.
A versão pedida é determinada, por esta ordem, a partir de:
.go-version- A diretiva
goemgo.mod
A toolchain não é incluída na imagem de execução (run image). Só o seu binário.
Instalação e build
go mod download se existir go.sum. Depois:
- Cada subdiretório de
cmd/que contenha ficheiros.goé compilado como um binário próprio. - Se não houver nenhum,
go buildde.produz um binário chamadoapp.
Por omissão, o build usa CGO_ENABLED=0 e -ldflags=-s -w. Pode substituí-los com as variáveis de ambiente CGO_ENABLED e GOFLAGS_LDFLAGS. Indique as bibliotecas nativas necessárias para a compilação num Aptfile ou em project.toml.
As aplicações Gin recebem GIN_MODE=release quando esse módulo está em go.sum.
Comando de arranque
Por omissão, o processo web executa um binário chamado server, api, web ou app, se algum deles tiver sido compilado; caso contrário, executa o primeiro. Os restantes binários de cmd/ tornam-se tipos de processo adicionais. Pode definir outro comando num Procfile. A aplicação deve escutar em PORT.