golang-alpine-docker
golang-alpine-docker copied to clipboard
Build golang binaries for alpine linux
DEPRECATED in favor the official golang
image
New golang official images are based on alpine as well.
Alpine linux golang docker image - 204MB
Because alpine linux and therefor gliderlabs/alpine
docker containers use musl instead gnu libc, your golang binaries build using libc will not work on alpine.
There are two ways you can fix this:
Static linking
CGO_ENABLED=0 go build -a -installsuffix cgo
Use this docker image
Use this docker container to build your golang project for alpine linux.
Image golang |
Image blang/golang-alpine |
---|---|
~515 MB | ~281 MB |
GCC+Other weight | Bare |
Also check out my blog post about this topic.
Usage
Like the base golang
image
docker pull blang/golang-alpine
docker run --rm -v "$PWD":/go/src/github.com/yourname/yourrepo -w /go/src/github.com/yourname/yourrepo blang/golang-alpine go build -v
docker run --rm -v "$PWD":/go/bin blang/golang-alpine go get github.com/yourname/yourrepo