latest(Go 1.7 on Solaris SPARC 11.3)
1.6-11.3(Go 1.6 on Solaris SPARC 11.3)
What is Go?
Go (a.k.a., Golang) is a programming language first developed at Google. It is a statically-typed language with syntax loosely derived from C, but with additional features such as garbage collection, type safety, some dynamic-typing capabilities, additional built-in types (e.g., variable-length arrays and key-value maps), and a large standard library.
How to use this image
This image allows you to compile Go binaries for Solaris Sparc
Compile your app inside the container
To compile your app inside the Docker instance, you can write something like:
$ docker run --rm -v $PWD:/go/src/myapp -v $PWD/target:/go/bin \ -w /usr/src/myapp craigbarrau/golang-solaris-sparc
This will add your current directory as a volume to the container, set the working directory to the volume, and run the command
go install which will tell go to compile and install the project in the target directory on the host.
The exact command that is run is as follows
go install --compiler gccgo --gccgoflags "-static-libgo -Wl,-dy -lnsl -lsocket -lrt"
This can of course be overridden when you run the Docker instance. For example, if you want to run with verbose you could execute the following:
$ docker run --rm -v $PWD:/go/src/myapp -v $PWD/target:/go/bin \ -w /usr/src/myapp craigbarrau/golang-solaris-sparc go install \ --compiler gccgo --gccgoflags "-v -static-libgo -Wl,-dy -lnsl \ -lsocket -lrt"
This was made possible thanks to the following blog