ko-build / ko

Build and deploy Go applications
https://ko.build
Apache License 2.0
7.66k stars 403 forks source link
container containers deploy docker go golang kubernetes

ko: Easy Go Containers

GitHub Actions Build Status GoDoc Go Report Card SLSA 3


🎉 Google has applied for ko to join the Cloud Native Computing Foundation as a Sandbox project! Learn more here!

ko is a simple, fast container image builder for Go applications.

It's ideal for use cases where your image contains a single Go application without any/many dependencies on the OS base image (e.g., no cgo, no OS package dependencies).

ko builds images by effectively executing go build on your local machine, and as such doesn't require docker to be installed. This can make it a good fit for lightweight CI/CD use cases.

ko makes multi-platform builds easy, produces SBOMs by default, and includes support for simple YAML templating which makes it a powerful tool for Kubernetes applications.

Install ko and get started!

Acknowledgements

This work is based heavily on experience from having built the Docker and Kubernetes support for Bazel. That work was presented here.

Discuss

Questions? Comments? Ideas? Come discuss ko with us in the #ko-build channel on the Kubernetes Slack! See you there!

Community Meetings

You can find all the necessary details about the community meetings in this page.