If cgo is not required, crosscompile a static Go binary for a different platform like so:
CGO_ENABLED=0 GOOS=linux GOARCH=arm go build -v .
If you need, e.g., sqlite support, then you need a crosscompiler. There is a guy who precompiles musl-based toolchains that can be found under https://musl.cc/
In practice, cross-compilation of a static binary with optional sqlite support looks like this:
CC=/path/to/armv7l-linux-musleabihf-cross/bin/armv7l-linux-musleabihf-gcc \
CGO_ENABLED=1 \
GOOS=linux \
GOARCH=arm \
go build -tags sqlite -ldflags "-linkmode external -extldflags -static" .