Go to file
Stanislav N. aka pztrn 6590e5bd40
All checks were successful
continuous-integration/drone/push Build is passing
Script for multiarch image.
2024-07-07 21:13:47 +05:00
scripts Update golang, golangci-lint, mockery, taskfile. 2024-07-07 20:38:54 +05:00
.drone.yml Initial commit. 2024-05-04 13:18:37 +05:00
.gitignore Initial commit. 2024-05-04 13:18:37 +05:00
.markdownlint.json Initial commit. 2024-05-04 13:18:37 +05:00
.yamllint Initial commit. 2024-05-04 13:18:37 +05:00
build_multiarch.sh Script for multiarch image. 2024-07-07 21:13:47 +05:00
build.sh Fix typo in build script (mainly for triggering CI). 2024-05-04 13:29:03 +05:00
Dockerfile Update Debian version. 2024-07-07 20:42:43 +05:00
README.md Update README. 2024-07-07 20:40:05 +05:00

Go ToolBox

Docker image with everything you might need for developing apps in Go.

Note that for newer mac hardware you have to use Docker Desktop or amd64 virtual machine in lima/other tools!

What's inside

Debian 12 (slim) is used as base image.

Binary Version Project Repo
go 1.22.5 Go
golangci-lint 1.59.1 golangci-lint External link
gofumpt 0.6.0 gofumpt External link
mockery_v2 2.43.2 mockery External link
task 3.38.0 taskfile External link
go-junit-report 2.1.0 go-junit-report External link
delve 1.22.1 delve External link

HOME

Home directory is /home/container.

Caching

Go's build cache resides in /home/container/.cache, GOCACHE environment variable is defined. You can mount it when needed in Dockerfile as:

RUN --mount=type=cache,target="$GOCACHE" go build

Utilities examples

JUnit report generation (for Gitlab)

go test -v 2>&1 ./... | go-junit-report -set-exit-code > unit-report.xml