Program aebundler turns a Go app into a fully self-contained tar file. The app and its subdirectories (if any) are placed under "." and the dependencies from $GOPATH are placed under ./_gopath/src. A main func is synthesized if one does not exist.
A sample Dockerfile to be used with this bundler could look like this:
FROM gcr.io/google-appengine/go-compat ADD . /app RUN GOPATH=/app/_gopath go build -tags appenginevm -o /app/_ah/exe