Sign inSign up

mysteriumnetwork/xgo

By mysteriumnetwork

Updated 5 months ago

Fork of https://github.com/karalabe/xgo

Image
1

10K+

mysteriumnetwork/xgo repository overview

xgo

Go CGO cross compiler in docker which is inspired by https://github.com/karalabe/xgo and https://github.com/techknowlogick/xgo but is much simpler and only contains docker files with no xgo command.

Usage
docker run --rm \
    -v "$PWD"/build:/build \
    -v "$GOPATH"/xgo-cache:/deps-cache:ro \
    -v "$PWD":/source \
    -e OUT=binary_name \
    -e FLAG_V=false \
    -e FLAG_X=false \
    -e FLAG_RACE=false \
    -e FLAG_LDFLAGS="-w -s" \
    -e FLAG_BUILDMODE=default \
    -e TARGETS="linux/amd64,darwin/amd64,windows/amd64" \
    mysteriumnetwork/xgo:1.13.6 ./cmd/path/to/entrypoint

Also see and run ./test.sh to build test examples.

Building image

If you make changes in docker/base you need to rebuild base image.

docker build -t mysteriumnetwork/xgo:base -f ./docker/base/Dockerfile ./docker/base
docker push mysteriumnetwork/xgo:base

Go 1.25+ Darwin builds need the newer macOS 12 SDK base image.

docker build -t mysteriumnetwork/xgo:base-macos12 -f ./docker/base-macos12/Dockerfile ./docker/base
docker push mysteriumnetwork/xgo:base-macos12

If you add new go version only when build and push.

Build new image.

docker build -t mysteriumnetwork/xgo:1.13.6 -f ./docker/go-1.13.6/Dockerfile .

Update and run tests.

./test.sh

Push image

docker push mysteriumnetwork/xgo:1.13.6

Tag summary

Content type

Image

Digest

sha256:6ed7ca491

Size

2 GB

Last updated

5 months ago

docker pull mysteriumnetwork/xgo:1.26.2