github.com/aavshr/aws-sdk-go@v1.41.3/awstesting/sandbox/Dockerfile.golang-tip (about) 1 # Based on docker-library's golang 1.6 alpine and wheezy docker files. 2 # https://github.com/docker-library/golang/blob/master/1.6/alpine/Dockerfile 3 # https://github.com/docker-library/golang/blob/master/1.6/wheezy/Dockerfile 4 FROM buildpack-deps:buster-scm 5 6 ENV GOLANG_SRC_REPO_URL https://github.com/golang/go 7 8 ENV GOLANG_BOOTSTRAP_URL https://storage.googleapis.com/golang/go1.4.3.linux-amd64.tar.gz 9 ENV GOLANG_BOOTSTRAP_SHA256 ce3140662f45356eb78bc16a88fc7cfb29fb00e18d7c632608245b789b2086d2 10 ENV GOLANG_BOOTSTRAP_PATH /usr/local/bootstrap 11 12 # gcc for cgo 13 RUN apt-get update && apt-get install -y --no-install-recommends \ 14 g++ \ 15 gcc \ 16 libc6-dev \ 17 make \ 18 git \ 19 && rm -rf /var/lib/apt/lists/* 20 21 # Setup the Bootstrap 22 RUN mkdir -p "$GOLANG_BOOTSTRAP_PATH" \ 23 && curl -fsSL "$GOLANG_BOOTSTRAP_URL" -o golang.tar.gz \ 24 && echo "$GOLANG_BOOTSTRAP_SHA256 golang.tar.gz" | sha256sum -c - \ 25 && tar -C "$GOLANG_BOOTSTRAP_PATH" -xzf golang.tar.gz \ 26 && rm golang.tar.gz 27 28 # Get and build Go tip 29 RUN export GOROOT_BOOTSTRAP=$GOLANG_BOOTSTRAP_PATH/go \ 30 && git clone "$GOLANG_SRC_REPO_URL" /usr/local/go \ 31 && cd /usr/local/go/src \ 32 && ./make.bash \ 33 && rm -rf "$GOLANG_BOOTSTRAP_PATH" /usr/local/go/pkg/bootstrap 34 35 # Build Go workspace and environment 36 ENV GOPATH /go 37 ENV PATH $GOPATH/bin:/usr/local/go/bin:$PATH 38 RUN mkdir -p "$GOPATH/src" "$GOPATH/bin" \ 39 && chmod -R 777 "$GOPATH" 40 41 WORKDIR $GOPATH