Skip to content

The containerized Go development environment.

License

Notifications You must be signed in to change notification settings

christinalau0/docker-go-dev

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

deis/go-dev

Build Status

A Go language development toolbox.

Some Azure projects use this Docker image as a standard build and test environment, but it is intended to be useful to any Go developer. Please help make deis/go-dev better by creating issues and submitting pull requests.

Image Contents

  • based on Ubuntu 20.04
  • az: Azure cloud command-line tool
  • azcopy: Utility for copying data to/from Microsoft Azure Blob and File storage
  • delve: debugger for the Go programming language
  • Docker: Docker binaries to be able to bind mount /var/run/docker.sock in the dev environment container
  • ginkgo: BDD testing framework for Go
  • go-bindata: converts any file into Go source code
  • golangci-lint: concurrent runner for Go linting tools
  • goss: YAML-based tool for validating a server's configuration
  • gox: simple Go cross-compiling tool
  • helm: Kubernetes package manager
  • jq: command-line JSON processor
  • jwt: tool for creating and parsing JSON Web Tokens
  • k: automatically run the correct version of kubectl every time
  • kubectl: Kubernetes command-line client
  • Packer: build automated machine images
  • ruby: ruby scripting language
  • shellcheck: static analysis for shell scripts
  • shfmt: shell script parser, formatter, and interpreter
  • shyaml: YAML access from the command line
  • test-cover.sh: test coverage for multiple Go packages
  • unzip: list, test, and extract files from ZIP archives
  • upx: executable packer
  • vim: text editor
  • wamerican: American English dictionary words for /usr/share/dict

Usage

Mount your local Go code into a container's $GOPATH to run any go command or one of the included tools or scripts. Here's an example of running ginko for deis/builder:

$ docker run --rm \
  --volume $GOPATH/src/github.com/deis/builder:/go/src/github.com/deis/builder \
  --workdir /go/src/github.com/deis/builder \
  quay.io/deis/go-dev:latest \
  ginkgo -r

Releases

The latest deis/go-dev Docker image is available at:

To publish a new release of deis/go-dev, use the deisrel tool:

$ deisrel release docker-go-dev v1.28.7
Doing a dry run of the component release...

Creating changelog for docker-go-dev with tag v1.28.6 through commit 1a69c5502ef1bca014fbd3581451d1421829a42f


### v1.28.6 -> v1.28.7
...

If the CHANGELOG contents look correct, run the same command again but add the argument --dry-run=false. You will be prompted to confirm again before any tag or release is written to GitHub.

About

The containerized Go development environment.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Dockerfile 64.9%
  • Shell 27.7%
  • Makefile 7.4%