From 5d7013811fe27f42d3f82df9312fb7c7b32113f2 Mon Sep 17 00:00:00 2001 From: <> Date: Mon, 10 Jul 2023 08:00:08 +0000 Subject: [PATCH] Deployed fdc4c04 with MkDocs version: 1.4.3 --- .nojekyll | 0 404.html | 723 ++ CNAME | 1 + action/index.html | 15 + advanced/faq/index.html | 983 +++ advanced/go-packages/index.html | 761 ++ advanced/limitations/index.html | 765 ++ advanced/migrating-from-dockerfile/index.html | 855 +++ agenda/index.html | 15 + assets/images/favicon.png | Bin 0 -> 1870 bytes assets/javascripts/bundle.220ee61c.min.js | 29 + assets/javascripts/bundle.220ee61c.min.js.map | 8 + assets/javascripts/lunr/min/lunr.ar.min.js | 1 + assets/javascripts/lunr/min/lunr.da.min.js | 18 + assets/javascripts/lunr/min/lunr.de.min.js | 18 + assets/javascripts/lunr/min/lunr.du.min.js | 18 + assets/javascripts/lunr/min/lunr.es.min.js | 18 + assets/javascripts/lunr/min/lunr.fi.min.js | 18 + assets/javascripts/lunr/min/lunr.fr.min.js | 18 + assets/javascripts/lunr/min/lunr.hi.min.js | 1 + assets/javascripts/lunr/min/lunr.hu.min.js | 18 + assets/javascripts/lunr/min/lunr.hy.min.js | 1 + assets/javascripts/lunr/min/lunr.it.min.js | 18 + assets/javascripts/lunr/min/lunr.ja.min.js | 1 + assets/javascripts/lunr/min/lunr.jp.min.js | 1 + assets/javascripts/lunr/min/lunr.kn.min.js | 1 + assets/javascripts/lunr/min/lunr.ko.min.js | 1 + assets/javascripts/lunr/min/lunr.multi.min.js | 1 + assets/javascripts/lunr/min/lunr.nl.min.js | 18 + assets/javascripts/lunr/min/lunr.no.min.js | 18 + assets/javascripts/lunr/min/lunr.pt.min.js | 18 + assets/javascripts/lunr/min/lunr.ro.min.js | 18 + assets/javascripts/lunr/min/lunr.ru.min.js | 18 + assets/javascripts/lunr/min/lunr.sa.min.js | 1 + .../lunr/min/lunr.stemmer.support.min.js | 1 + assets/javascripts/lunr/min/lunr.sv.min.js | 18 + assets/javascripts/lunr/min/lunr.ta.min.js | 1 + assets/javascripts/lunr/min/lunr.te.min.js | 1 + assets/javascripts/lunr/min/lunr.th.min.js | 1 + assets/javascripts/lunr/min/lunr.tr.min.js | 18 + assets/javascripts/lunr/min/lunr.vi.min.js | 1 + assets/javascripts/lunr/min/lunr.zh.min.js | 1 + assets/javascripts/lunr/tinyseg.js | 206 + assets/javascripts/lunr/wordcut.js | 6708 +++++++++++++++++ .../workers/search.74e28a9f.min.js | 42 + .../workers/search.74e28a9f.min.js.map | 8 + assets/stylesheets/main.26e3688c.min.css | 1 + assets/stylesheets/main.26e3688c.min.css.map | 1 + assets/stylesheets/palette.ecc896b0.min.css | 1 + .../stylesheets/palette.ecc896b0.min.css.map | 1 + community/index.html | 823 ++ configuration/index.html | 1037 +++ custom/main.html | 11 + custom/partials/copyright.html | 1 + deployment/index.html | 900 +++ features/build-cache/index.html | 763 ++ features/k8s/index.html | 914 +++ features/multi-platform/index.html | 765 ++ features/sboms/index.html | 764 ++ features/static-assets/index.html | 788 ++ get-started/index.html | 888 +++ godoc/index.html | 15 + images/android-icon-192x192.png | Bin 0 -> 8300 bytes images/apple-icon-180x180.png | Bin 0 -> 7725 bytes images/apple-icon.png | Bin 0 -> 6927 bytes images/cncf.svg | 1 + images/demo.png | Bin 0 -> 243310 bytes images/favicon-16x16.png | Bin 0 -> 658 bytes images/favicon-32x32.png | Bin 0 -> 1279 bytes images/favicon-96x96.png | Bin 0 -> 4114 bytes images/ko-with-name.svg | 28 + images/ko.png | Bin 0 -> 4061 bytes images/ko.svg | 714 ++ images/ms-icon-144x144.png | Bin 0 -> 6181 bytes images/og.png | Bin 0 -> 58073 bytes index.html | 784 ++ install/index.html | 891 +++ issues/index.html | 15 + prs/index.html | 15 + reference/ko/index.html | 859 +++ reference/ko_apply/index.html | 947 +++ reference/ko_build/index.html | 941 +++ reference/ko_create/index.html | 947 +++ reference/ko_delete/index.html | 868 +++ reference/ko_login/index.html | 889 +++ reference/ko_resolve/index.html | 940 +++ reference/ko_run/index.html | 929 +++ reference/ko_version/index.html | 866 +++ releases/index.html | 15 + repo/index.html | 15 + search/search_index.json | 1 + sitemap.xml | 123 + sitemap.xml.gz | Bin 0 -> 399 bytes slack/index.html | 15 + terraform/index.html | 15 + 95 files changed, 29895 insertions(+) create mode 100644 .nojekyll create mode 100644 404.html create mode 100644 CNAME create mode 100644 action/index.html create mode 100644 advanced/faq/index.html create mode 100644 advanced/go-packages/index.html create mode 100644 advanced/limitations/index.html create mode 100644 advanced/migrating-from-dockerfile/index.html create mode 100644 agenda/index.html create mode 100644 assets/images/favicon.png create mode 100644 assets/javascripts/bundle.220ee61c.min.js create mode 100644 assets/javascripts/bundle.220ee61c.min.js.map create mode 100644 assets/javascripts/lunr/min/lunr.ar.min.js create mode 100644 assets/javascripts/lunr/min/lunr.da.min.js create mode 100644 assets/javascripts/lunr/min/lunr.de.min.js create mode 100644 assets/javascripts/lunr/min/lunr.du.min.js create mode 100644 assets/javascripts/lunr/min/lunr.es.min.js create mode 100644 assets/javascripts/lunr/min/lunr.fi.min.js create mode 100644 assets/javascripts/lunr/min/lunr.fr.min.js create mode 100644 assets/javascripts/lunr/min/lunr.hi.min.js create mode 100644 assets/javascripts/lunr/min/lunr.hu.min.js create mode 100644 assets/javascripts/lunr/min/lunr.hy.min.js create mode 100644 assets/javascripts/lunr/min/lunr.it.min.js create mode 100644 assets/javascripts/lunr/min/lunr.ja.min.js create mode 100644 assets/javascripts/lunr/min/lunr.jp.min.js create mode 100644 assets/javascripts/lunr/min/lunr.kn.min.js create mode 100644 assets/javascripts/lunr/min/lunr.ko.min.js create mode 100644 assets/javascripts/lunr/min/lunr.multi.min.js create mode 100644 assets/javascripts/lunr/min/lunr.nl.min.js create mode 100644 assets/javascripts/lunr/min/lunr.no.min.js create mode 100644 assets/javascripts/lunr/min/lunr.pt.min.js create mode 100644 assets/javascripts/lunr/min/lunr.ro.min.js create mode 100644 assets/javascripts/lunr/min/lunr.ru.min.js create mode 100644 assets/javascripts/lunr/min/lunr.sa.min.js create mode 100644 assets/javascripts/lunr/min/lunr.stemmer.support.min.js create mode 100644 assets/javascripts/lunr/min/lunr.sv.min.js create mode 100644 assets/javascripts/lunr/min/lunr.ta.min.js create mode 100644 assets/javascripts/lunr/min/lunr.te.min.js create mode 100644 assets/javascripts/lunr/min/lunr.th.min.js create mode 100644 assets/javascripts/lunr/min/lunr.tr.min.js create mode 100644 assets/javascripts/lunr/min/lunr.vi.min.js create mode 100644 assets/javascripts/lunr/min/lunr.zh.min.js create mode 100644 assets/javascripts/lunr/tinyseg.js create mode 100644 assets/javascripts/lunr/wordcut.js create mode 100644 assets/javascripts/workers/search.74e28a9f.min.js create mode 100644 assets/javascripts/workers/search.74e28a9f.min.js.map create mode 100644 assets/stylesheets/main.26e3688c.min.css create mode 100644 assets/stylesheets/main.26e3688c.min.css.map create mode 100644 assets/stylesheets/palette.ecc896b0.min.css create mode 100644 assets/stylesheets/palette.ecc896b0.min.css.map create mode 100644 community/index.html create mode 100644 configuration/index.html create mode 100644 custom/main.html create mode 100644 custom/partials/copyright.html create mode 100644 deployment/index.html create mode 100644 features/build-cache/index.html create mode 100644 features/k8s/index.html create mode 100644 features/multi-platform/index.html create mode 100644 features/sboms/index.html create mode 100644 features/static-assets/index.html create mode 100644 get-started/index.html create mode 100644 godoc/index.html create mode 100644 images/android-icon-192x192.png create mode 100644 images/apple-icon-180x180.png create mode 100644 images/apple-icon.png create mode 100644 images/cncf.svg create mode 100644 images/demo.png create mode 100644 images/favicon-16x16.png create mode 100644 images/favicon-32x32.png create mode 100644 images/favicon-96x96.png create mode 100644 images/ko-with-name.svg create mode 100644 images/ko.png create mode 100644 images/ko.svg create mode 100644 images/ms-icon-144x144.png create mode 100644 images/og.png create mode 100644 index.html create mode 100644 install/index.html create mode 100644 issues/index.html create mode 100644 prs/index.html create mode 100644 reference/ko/index.html create mode 100644 reference/ko_apply/index.html create mode 100644 reference/ko_build/index.html create mode 100644 reference/ko_create/index.html create mode 100644 reference/ko_delete/index.html create mode 100644 reference/ko_login/index.html create mode 100644 reference/ko_resolve/index.html create mode 100644 reference/ko_run/index.html create mode 100644 reference/ko_version/index.html create mode 100644 releases/index.html create mode 100644 repo/index.html create mode 100644 search/search_index.json create mode 100644 sitemap.xml create mode 100644 sitemap.xml.gz create mode 100644 slack/index.html create mode 100644 terraform/index.html diff --git a/.nojekyll b/.nojekyll new file mode 100644 index 0000000000..e69de29bb2 diff --git a/404.html b/404.html new file mode 100644 index 0000000000..9e96f9601d --- /dev/null +++ b/404.html @@ -0,0 +1,723 @@ + + + + + + + + + + + + + + + + + + + + + ko: Easy Go Containers + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+
+ +
+ + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ +

404 - Not found

+ +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/CNAME b/CNAME new file mode 100644 index 0000000000..8bc27dadb7 --- /dev/null +++ b/CNAME @@ -0,0 +1 @@ +ko.build diff --git a/action/index.html b/action/index.html new file mode 100644 index 0000000000..8d9ff68a5d --- /dev/null +++ b/action/index.html @@ -0,0 +1,15 @@ + + + + + + Redirecting... + + + + + + +Redirecting... + + diff --git a/advanced/faq/index.html b/advanced/faq/index.html new file mode 100644 index 0000000000..3bacd6b7c1 --- /dev/null +++ b/advanced/faq/index.html @@ -0,0 +1,983 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + Frequently Asked Questions - ko: Easy Go Containers + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + Skip to content + + +
+
+ +
+ + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + + + + + +
+
+ + + + + + + +

Frequently Asked Questions

+

How can I set ldflags?

+

Using -ldflags is a common way to embed version info in go binaries (In fact, we do this for ko!). +Unfortunately, because ko wraps go build, it's not possible to use this flag directly; however, you can use the GOFLAGS environment variable instead:

+
GOFLAGS="-ldflags=-X=main.version=1.2.3" ko build .
+
+

Currently, there is a limitation that does not allow to set multiple arguments in ldflags using GOFLAGS. +Using -ldflags multiple times also does not work. +In this use case, it works best to use the builds section in the .ko.yaml file.

+

Why are my images all created in 1970?

+

In order to support reproducible builds, ko doesn't embed timestamps in the images it produces by default.

+

However, ko does respect the SOURCE_DATE_EPOCH environment variable, which will set the container image's timestamp accordingly.

+

Similarly, the KO_DATA_DATE_EPOCH environment variable can be used to set the modtime timestamp of the files in KO_DATA_PATH.

+

For example, you can set the container image's timestamp to the current timestamp by executing:

+
export SOURCE_DATE_EPOCH=$(date +%s)
+
+

or set the timestamp of the files in KO_DATA_PATH to the latest git commit's timestamp with:

+
export KO_DATA_DATE_EPOCH=$(git log -1 --format='%ct')
+
+

Can I build Windows containers?

+

Yes, but support for Windows containers is new, experimental, and tenuous. Be prepared to file bugs. 🐛

+

The default base image does not provide a Windows image. +You can try out building a Windows container image by setting the base image to a Windows base image and building with --platform=windows/amd64 or --platform=all:

+

For example, to build a Windows container image, update your .ko.yaml to set the base image:

+
defaultBaseImage: mcr.microsoft.com/windows/nanoserver:ltsc2022
+
+

And build for windows/amd64.

+
ko build ./ --platform=windows/amd64
+
+

Known issues 🐛

+
    +
  • Symlinks in kodata are ignored when building Windows images; only regular files and directories will be included in the Windows image.
  • +
+

Does ko support autocompletion?

+

Yes! ko completion generates a Bash/Zsh/Fish/PowerShell completion script. +You can get how to load it from help document.

+
ko completion [bash|zsh|fish|powershell] --help
+
+

Or, you can source it directly:

+
source <(ko completion)
+
+

Does ko work with Kustomize?

+

Yes! ko resolve -f - will read and process input from stdin, so you can have ko easily process the output of the kustomize command.

+
kustomize build config | ko resolve -f -
+
+

Does ko integrate with other build and development tools?

+

Oh, you betcha. Here's a partial list:

+ +

Does ko work with OpenShift Internal Registry?

+

Yes! Follow these steps:

+
    +
  1. Connect to your OpenShift installation
  2. +
  3. Expose the OpenShift Internal Registry so you can push to it:
  4. +
  5. Export your token to $HOME/.docker/config.json:
  6. +
+
oc registry login --to=$HOME/.docker/config.json
+
+
    +
  1. Create a namespace where you will push your images, i.e: ko-images
  2. +
  3. Execute this command to set KO_DOCKER_REPO to publish images to the internal registry.
  4. +
+
export KO_DOCKER_REPO=$(oc registry info --public)/ko-images
+
+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/advanced/go-packages/index.html b/advanced/go-packages/index.html new file mode 100644 index 0000000000..9a96f323de --- /dev/null +++ b/advanced/go-packages/index.html @@ -0,0 +1,761 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + Go Packages - ko: Easy Go Containers + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + Skip to content + + +
+
+ +
+ + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + +

Go Packages

+

ko's functionality can be consumed as a library in a Go application.

+

To build an image, use pkg/build, and publish it with pkg/publish.

+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/advanced/limitations/index.html b/advanced/limitations/index.html new file mode 100644 index 0000000000..35dc9508b1 --- /dev/null +++ b/advanced/limitations/index.html @@ -0,0 +1,765 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + Limitations - ko: Easy Go Containers + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + Skip to content + + +
+
+ +
+ + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + +

Limitations

+

ko works best when your application has no dependencies on the underlying image.

+

This means ko is ideal when you don't require cgo, and builds are executed with CGO_ENABLED=0 by default.

+

To install other OS packages, make those available in your configured base image.

+

ko only supports Go applications. +For a similar tool targeting Java applications, try Jib. +For other languages, try apko and melange.

+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/advanced/migrating-from-dockerfile/index.html b/advanced/migrating-from-dockerfile/index.html new file mode 100644 index 0000000000..4fe7b6f1b5 --- /dev/null +++ b/advanced/migrating-from-dockerfile/index.html @@ -0,0 +1,855 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + Migrating from Dockerfile - ko: Easy Go Containers + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + Skip to content + + +
+
+ +
+ + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + +

Migrating from Dockerfile

+

If your Dockerfile looks like either of the examples in the official tutorial for writing a Dockerfile to containerize a Go application, you can easily migrate to use ko instead.

+

Let's review the best practice multi-stage Dockerfile in that tutorial first:

+
# syntax=docker/dockerfile:1
+
+##
+## Build
+##
+FROM golang:1.16-buster AS build
+
+WORKDIR /app
+
+COPY go.mod ./
+COPY go.sum ./
+RUN go mod download
+
+COPY *.go ./
+
+RUN go build -o /docker-gs-ping
+
+##
+## Deploy
+##
+FROM gcr.io/distroless/base-debian10
+
+WORKDIR /
+
+COPY --from=build /docker-gs-ping /docker-gs-ping
+
+EXPOSE 8080
+
+USER nonroot:nonroot
+
+ENTRYPOINT ["/docker-gs-ping"]
+
+

This Dockerfile:

+
    +
  1. pulls the golang:1.16 image
  2. +
  3. COPYs your local source into the container environment (COPYing go.mod and go.sum first and running go mod download, to cache dependencies in the container environment)
  4. +
  5. RUNs go build on your source, inside the container, to produce an executable
  6. +
  7. COPYs the executable built in the previous step into a new image, on top of a minimal distroless base image.
  8. +
+

The result is a Go application built on a minimal base image, with an optimally cached build sequence.

+

After running docker build on this Dockerfile, don't forget to push that image to the registry so you can deploy it.

+
+

Migrating to ko

+

If your Go source is laid out as described in the tutorial, and you've installed and set up your environment, you can simply run ko build ./ to build and push the container image to your registry.

+

You're done. You can delete your Dockerfile and uninstall docker.

+

ko takes advantage of your local Go build cache without needing to be told to, and it sets the ENTRYPOINT and uses a nonroot distroless base image by default.

+

To build a multi-arch image, simply add --platform=all. +Compare this to the equivalent Docker instructions.

+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/agenda/index.html b/agenda/index.html new file mode 100644 index 0000000000..72dab68413 --- /dev/null +++ b/agenda/index.html @@ -0,0 +1,15 @@ + + + + + + Redirecting... + + + + + + +Redirecting... + + diff --git a/assets/images/favicon.png b/assets/images/favicon.png new file mode 100644 index 0000000000000000000000000000000000000000..1cf13b9f9d978896599290a74f77d5dbe7d1655c GIT binary patch literal 1870 zcmV-U2eJ5xP)Gc)JR9QMau)O=X#!i9;T z37kk-upj^(fsR36MHs_+1RCI)NNu9}lD0S{B^g8PN?Ww(5|~L#Ng*g{WsqleV}|#l zz8@ri&cTzw_h33bHI+12+kK6WN$h#n5cD8OQt`5kw6p~9H3()bUQ8OS4Q4HTQ=1Ol z_JAocz`fLbT2^{`8n~UAo=#AUOf=SOq4pYkt;XbC&f#7lb$*7=$na!mWCQ`dBQsO0 zLFBSPj*N?#u5&pf2t4XjEGH|=pPQ8xh7tpx;US5Cx_Ju;!O`ya-yF`)b%TEt5>eP1ZX~}sjjA%FJF?h7cX8=b!DZl<6%Cv z*G0uvvU+vmnpLZ2paivG-(cd*y3$hCIcsZcYOGh{$&)A6*XX&kXZd3G8m)G$Zz-LV z^GF3VAW^Mdv!)4OM8EgqRiz~*Cji;uzl2uC9^=8I84vNp;ltJ|q-*uQwGp2ma6cY7 z;`%`!9UXO@fr&Ebapfs34OmS9^u6$)bJxrucutf>`dKPKT%%*d3XlFVKunp9 zasduxjrjs>f8V=D|J=XNZp;_Zy^WgQ$9WDjgY=z@stwiEBm9u5*|34&1Na8BMjjgf3+SHcr`5~>oz1Y?SW^=K z^bTyO6>Gar#P_W2gEMwq)ot3; zREHn~U&Dp0l6YT0&k-wLwYjb?5zGK`W6S2v+K>AM(95m2C20L|3m~rN8dprPr@t)5lsk9Hu*W z?pS990s;Ez=+Rj{x7p``4>+c0G5^pYnB1^!TL=(?HLHZ+HicG{~4F1d^5Awl_2!1jICM-!9eoLhbbT^;yHcefyTAaqRcY zmuctDopPT!%k+}x%lZRKnzykr2}}XfG_ne?nRQO~?%hkzo;@RN{P6o`&mMUWBYMTe z6i8ChtjX&gXl`nvrU>jah)2iNM%JdjqoaeaU%yVn!^70x-flljp6Q5tK}5}&X8&&G zX3fpb3E(!rH=zVI_9Gjl45w@{(ITqngWFe7@9{mX;tO25Z_8 zQHEpI+FkTU#4xu>RkN>b3Tnc3UpWzPXWm#o55GKF09j^Mh~)K7{QqbO_~(@CVq! zS<8954|P8mXN2MRs86xZ&Q4EfM@JB94b=(YGuk)s&^jiSF=t3*oNK3`rD{H`yQ?d; ztE=laAUoZx5?RC8*WKOj`%LXEkgDd>&^Q4M^z`%u0rg-It=hLCVsq!Z%^6eB-OvOT zFZ28TN&cRmgU}Elrnk43)!>Z1FCPL2K$7}gwzIc48NX}#!A1BpJP?#v5wkNprhV** z?Cpalt1oH&{r!o3eSKc&ap)iz2BTn_VV`4>9M^b3;(YY}4>#ML6{~(4mH+?%07*qo IM6N<$f(jP3KmY&$ literal 0 HcmV?d00001 diff --git a/assets/javascripts/bundle.220ee61c.min.js b/assets/javascripts/bundle.220ee61c.min.js new file mode 100644 index 0000000000..116072a11e --- /dev/null +++ b/assets/javascripts/bundle.220ee61c.min.js @@ -0,0 +1,29 @@ +"use strict";(()=>{var Ci=Object.create;var gr=Object.defineProperty;var Ri=Object.getOwnPropertyDescriptor;var ki=Object.getOwnPropertyNames,Ht=Object.getOwnPropertySymbols,Hi=Object.getPrototypeOf,yr=Object.prototype.hasOwnProperty,nn=Object.prototype.propertyIsEnumerable;var rn=(e,t,r)=>t in e?gr(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,P=(e,t)=>{for(var r in t||(t={}))yr.call(t,r)&&rn(e,r,t[r]);if(Ht)for(var r of Ht(t))nn.call(t,r)&&rn(e,r,t[r]);return e};var on=(e,t)=>{var r={};for(var n in e)yr.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&Ht)for(var n of Ht(e))t.indexOf(n)<0&&nn.call(e,n)&&(r[n]=e[n]);return r};var Pt=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports);var Pi=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of ki(t))!yr.call(e,o)&&o!==r&&gr(e,o,{get:()=>t[o],enumerable:!(n=Ri(t,o))||n.enumerable});return e};var yt=(e,t,r)=>(r=e!=null?Ci(Hi(e)):{},Pi(t||!e||!e.__esModule?gr(r,"default",{value:e,enumerable:!0}):r,e));var sn=Pt((xr,an)=>{(function(e,t){typeof xr=="object"&&typeof an!="undefined"?t():typeof define=="function"&&define.amd?define(t):t()})(xr,function(){"use strict";function e(r){var n=!0,o=!1,i=null,s={text:!0,search:!0,url:!0,tel:!0,email:!0,password:!0,number:!0,date:!0,month:!0,week:!0,time:!0,datetime:!0,"datetime-local":!0};function a(O){return!!(O&&O!==document&&O.nodeName!=="HTML"&&O.nodeName!=="BODY"&&"classList"in O&&"contains"in O.classList)}function f(O){var Qe=O.type,De=O.tagName;return!!(De==="INPUT"&&s[Qe]&&!O.readOnly||De==="TEXTAREA"&&!O.readOnly||O.isContentEditable)}function c(O){O.classList.contains("focus-visible")||(O.classList.add("focus-visible"),O.setAttribute("data-focus-visible-added",""))}function u(O){O.hasAttribute("data-focus-visible-added")&&(O.classList.remove("focus-visible"),O.removeAttribute("data-focus-visible-added"))}function p(O){O.metaKey||O.altKey||O.ctrlKey||(a(r.activeElement)&&c(r.activeElement),n=!0)}function m(O){n=!1}function d(O){a(O.target)&&(n||f(O.target))&&c(O.target)}function h(O){a(O.target)&&(O.target.classList.contains("focus-visible")||O.target.hasAttribute("data-focus-visible-added"))&&(o=!0,window.clearTimeout(i),i=window.setTimeout(function(){o=!1},100),u(O.target))}function v(O){document.visibilityState==="hidden"&&(o&&(n=!0),Y())}function Y(){document.addEventListener("mousemove",N),document.addEventListener("mousedown",N),document.addEventListener("mouseup",N),document.addEventListener("pointermove",N),document.addEventListener("pointerdown",N),document.addEventListener("pointerup",N),document.addEventListener("touchmove",N),document.addEventListener("touchstart",N),document.addEventListener("touchend",N)}function B(){document.removeEventListener("mousemove",N),document.removeEventListener("mousedown",N),document.removeEventListener("mouseup",N),document.removeEventListener("pointermove",N),document.removeEventListener("pointerdown",N),document.removeEventListener("pointerup",N),document.removeEventListener("touchmove",N),document.removeEventListener("touchstart",N),document.removeEventListener("touchend",N)}function N(O){O.target.nodeName&&O.target.nodeName.toLowerCase()==="html"||(n=!1,B())}document.addEventListener("keydown",p,!0),document.addEventListener("mousedown",m,!0),document.addEventListener("pointerdown",m,!0),document.addEventListener("touchstart",m,!0),document.addEventListener("visibilitychange",v,!0),Y(),r.addEventListener("focus",d,!0),r.addEventListener("blur",h,!0),r.nodeType===Node.DOCUMENT_FRAGMENT_NODE&&r.host?r.host.setAttribute("data-js-focus-visible",""):r.nodeType===Node.DOCUMENT_NODE&&(document.documentElement.classList.add("js-focus-visible"),document.documentElement.setAttribute("data-js-focus-visible",""))}if(typeof window!="undefined"&&typeof document!="undefined"){window.applyFocusVisiblePolyfill=e;var t;try{t=new CustomEvent("focus-visible-polyfill-ready")}catch(r){t=document.createEvent("CustomEvent"),t.initCustomEvent("focus-visible-polyfill-ready",!1,!1,{})}window.dispatchEvent(t)}typeof document!="undefined"&&e(document)})});var cn=Pt(Er=>{(function(e){var t=function(){try{return!!Symbol.iterator}catch(c){return!1}},r=t(),n=function(c){var u={next:function(){var p=c.shift();return{done:p===void 0,value:p}}};return r&&(u[Symbol.iterator]=function(){return u}),u},o=function(c){return encodeURIComponent(c).replace(/%20/g,"+")},i=function(c){return decodeURIComponent(String(c).replace(/\+/g," "))},s=function(){var c=function(p){Object.defineProperty(this,"_entries",{writable:!0,value:{}});var m=typeof p;if(m!=="undefined")if(m==="string")p!==""&&this._fromString(p);else if(p instanceof c){var d=this;p.forEach(function(B,N){d.append(N,B)})}else if(p!==null&&m==="object")if(Object.prototype.toString.call(p)==="[object Array]")for(var h=0;hd[0]?1:0}),c._entries&&(c._entries={});for(var p=0;p1?i(d[1]):"")}})})(typeof global!="undefined"?global:typeof window!="undefined"?window:typeof self!="undefined"?self:Er);(function(e){var t=function(){try{var o=new e.URL("b","http://a");return o.pathname="c d",o.href==="http://a/c%20d"&&o.searchParams}catch(i){return!1}},r=function(){var o=e.URL,i=function(f,c){typeof f!="string"&&(f=String(f)),c&&typeof c!="string"&&(c=String(c));var u=document,p;if(c&&(e.location===void 0||c!==e.location.href)){c=c.toLowerCase(),u=document.implementation.createHTMLDocument(""),p=u.createElement("base"),p.href=c,u.head.appendChild(p);try{if(p.href.indexOf(c)!==0)throw new Error(p.href)}catch(O){throw new Error("URL unable to set base "+c+" due to "+O)}}var m=u.createElement("a");m.href=f,p&&(u.body.appendChild(m),m.href=m.href);var d=u.createElement("input");if(d.type="url",d.value=f,m.protocol===":"||!/:/.test(m.href)||!d.checkValidity()&&!c)throw new TypeError("Invalid URL");Object.defineProperty(this,"_anchorElement",{value:m});var h=new e.URLSearchParams(this.search),v=!0,Y=!0,B=this;["append","delete","set"].forEach(function(O){var Qe=h[O];h[O]=function(){Qe.apply(h,arguments),v&&(Y=!1,B.search=h.toString(),Y=!0)}}),Object.defineProperty(this,"searchParams",{value:h,enumerable:!0});var N=void 0;Object.defineProperty(this,"_updateSearchParams",{enumerable:!1,configurable:!1,writable:!1,value:function(){this.search!==N&&(N=this.search,Y&&(v=!1,this.searchParams._fromString(this.search),v=!0))}})},s=i.prototype,a=function(f){Object.defineProperty(s,f,{get:function(){return this._anchorElement[f]},set:function(c){this._anchorElement[f]=c},enumerable:!0})};["hash","host","hostname","port","protocol"].forEach(function(f){a(f)}),Object.defineProperty(s,"search",{get:function(){return this._anchorElement.search},set:function(f){this._anchorElement.search=f,this._updateSearchParams()},enumerable:!0}),Object.defineProperties(s,{toString:{get:function(){var f=this;return function(){return f.href}}},href:{get:function(){return this._anchorElement.href.replace(/\?$/,"")},set:function(f){this._anchorElement.href=f,this._updateSearchParams()},enumerable:!0},pathname:{get:function(){return this._anchorElement.pathname.replace(/(^\/?)/,"/")},set:function(f){this._anchorElement.pathname=f},enumerable:!0},origin:{get:function(){var f={"http:":80,"https:":443,"ftp:":21}[this._anchorElement.protocol],c=this._anchorElement.port!=f&&this._anchorElement.port!=="";return this._anchorElement.protocol+"//"+this._anchorElement.hostname+(c?":"+this._anchorElement.port:"")},enumerable:!0},password:{get:function(){return""},set:function(f){},enumerable:!0},username:{get:function(){return""},set:function(f){},enumerable:!0}}),i.createObjectURL=function(f){return o.createObjectURL.apply(o,arguments)},i.revokeObjectURL=function(f){return o.revokeObjectURL.apply(o,arguments)},e.URL=i};if(t()||r(),e.location!==void 0&&!("origin"in e.location)){var n=function(){return e.location.protocol+"//"+e.location.hostname+(e.location.port?":"+e.location.port:"")};try{Object.defineProperty(e.location,"origin",{get:n,enumerable:!0})}catch(o){setInterval(function(){e.location.origin=n()},100)}}})(typeof global!="undefined"?global:typeof window!="undefined"?window:typeof self!="undefined"?self:Er)});var qr=Pt((Mt,Nr)=>{/*! + * clipboard.js v2.0.11 + * https://clipboardjs.com/ + * + * Licensed MIT © Zeno Rocha + */(function(t,r){typeof Mt=="object"&&typeof Nr=="object"?Nr.exports=r():typeof define=="function"&&define.amd?define([],r):typeof Mt=="object"?Mt.ClipboardJS=r():t.ClipboardJS=r()})(Mt,function(){return function(){var e={686:function(n,o,i){"use strict";i.d(o,{default:function(){return Ai}});var s=i(279),a=i.n(s),f=i(370),c=i.n(f),u=i(817),p=i.n(u);function m(j){try{return document.execCommand(j)}catch(T){return!1}}var d=function(T){var E=p()(T);return m("cut"),E},h=d;function v(j){var T=document.documentElement.getAttribute("dir")==="rtl",E=document.createElement("textarea");E.style.fontSize="12pt",E.style.border="0",E.style.padding="0",E.style.margin="0",E.style.position="absolute",E.style[T?"right":"left"]="-9999px";var H=window.pageYOffset||document.documentElement.scrollTop;return E.style.top="".concat(H,"px"),E.setAttribute("readonly",""),E.value=j,E}var Y=function(T,E){var H=v(T);E.container.appendChild(H);var I=p()(H);return m("copy"),H.remove(),I},B=function(T){var E=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{container:document.body},H="";return typeof T=="string"?H=Y(T,E):T instanceof HTMLInputElement&&!["text","search","url","tel","password"].includes(T==null?void 0:T.type)?H=Y(T.value,E):(H=p()(T),m("copy")),H},N=B;function O(j){"@babel/helpers - typeof";return typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?O=function(E){return typeof E}:O=function(E){return E&&typeof Symbol=="function"&&E.constructor===Symbol&&E!==Symbol.prototype?"symbol":typeof E},O(j)}var Qe=function(){var T=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},E=T.action,H=E===void 0?"copy":E,I=T.container,q=T.target,Me=T.text;if(H!=="copy"&&H!=="cut")throw new Error('Invalid "action" value, use either "copy" or "cut"');if(q!==void 0)if(q&&O(q)==="object"&&q.nodeType===1){if(H==="copy"&&q.hasAttribute("disabled"))throw new Error('Invalid "target" attribute. Please use "readonly" instead of "disabled" attribute');if(H==="cut"&&(q.hasAttribute("readonly")||q.hasAttribute("disabled")))throw new Error(`Invalid "target" attribute. You can't cut text from elements with "readonly" or "disabled" attributes`)}else throw new Error('Invalid "target" value, use a valid Element');if(Me)return N(Me,{container:I});if(q)return H==="cut"?h(q):N(q,{container:I})},De=Qe;function $e(j){"@babel/helpers - typeof";return typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?$e=function(E){return typeof E}:$e=function(E){return E&&typeof Symbol=="function"&&E.constructor===Symbol&&E!==Symbol.prototype?"symbol":typeof E},$e(j)}function Ei(j,T){if(!(j instanceof T))throw new TypeError("Cannot call a class as a function")}function tn(j,T){for(var E=0;E0&&arguments[0]!==void 0?arguments[0]:{};this.action=typeof I.action=="function"?I.action:this.defaultAction,this.target=typeof I.target=="function"?I.target:this.defaultTarget,this.text=typeof I.text=="function"?I.text:this.defaultText,this.container=$e(I.container)==="object"?I.container:document.body}},{key:"listenClick",value:function(I){var q=this;this.listener=c()(I,"click",function(Me){return q.onClick(Me)})}},{key:"onClick",value:function(I){var q=I.delegateTarget||I.currentTarget,Me=this.action(q)||"copy",kt=De({action:Me,container:this.container,target:this.target(q),text:this.text(q)});this.emit(kt?"success":"error",{action:Me,text:kt,trigger:q,clearSelection:function(){q&&q.focus(),window.getSelection().removeAllRanges()}})}},{key:"defaultAction",value:function(I){return vr("action",I)}},{key:"defaultTarget",value:function(I){var q=vr("target",I);if(q)return document.querySelector(q)}},{key:"defaultText",value:function(I){return vr("text",I)}},{key:"destroy",value:function(){this.listener.destroy()}}],[{key:"copy",value:function(I){var q=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{container:document.body};return N(I,q)}},{key:"cut",value:function(I){return h(I)}},{key:"isSupported",value:function(){var I=arguments.length>0&&arguments[0]!==void 0?arguments[0]:["copy","cut"],q=typeof I=="string"?[I]:I,Me=!!document.queryCommandSupported;return q.forEach(function(kt){Me=Me&&!!document.queryCommandSupported(kt)}),Me}}]),E}(a()),Ai=Li},828:function(n){var o=9;if(typeof Element!="undefined"&&!Element.prototype.matches){var i=Element.prototype;i.matches=i.matchesSelector||i.mozMatchesSelector||i.msMatchesSelector||i.oMatchesSelector||i.webkitMatchesSelector}function s(a,f){for(;a&&a.nodeType!==o;){if(typeof a.matches=="function"&&a.matches(f))return a;a=a.parentNode}}n.exports=s},438:function(n,o,i){var s=i(828);function a(u,p,m,d,h){var v=c.apply(this,arguments);return u.addEventListener(m,v,h),{destroy:function(){u.removeEventListener(m,v,h)}}}function f(u,p,m,d,h){return typeof u.addEventListener=="function"?a.apply(null,arguments):typeof m=="function"?a.bind(null,document).apply(null,arguments):(typeof u=="string"&&(u=document.querySelectorAll(u)),Array.prototype.map.call(u,function(v){return a(v,p,m,d,h)}))}function c(u,p,m,d){return function(h){h.delegateTarget=s(h.target,p),h.delegateTarget&&d.call(u,h)}}n.exports=f},879:function(n,o){o.node=function(i){return i!==void 0&&i instanceof HTMLElement&&i.nodeType===1},o.nodeList=function(i){var s=Object.prototype.toString.call(i);return i!==void 0&&(s==="[object NodeList]"||s==="[object HTMLCollection]")&&"length"in i&&(i.length===0||o.node(i[0]))},o.string=function(i){return typeof i=="string"||i instanceof String},o.fn=function(i){var s=Object.prototype.toString.call(i);return s==="[object Function]"}},370:function(n,o,i){var s=i(879),a=i(438);function f(m,d,h){if(!m&&!d&&!h)throw new Error("Missing required arguments");if(!s.string(d))throw new TypeError("Second argument must be a String");if(!s.fn(h))throw new TypeError("Third argument must be a Function");if(s.node(m))return c(m,d,h);if(s.nodeList(m))return u(m,d,h);if(s.string(m))return p(m,d,h);throw new TypeError("First argument must be a String, HTMLElement, HTMLCollection, or NodeList")}function c(m,d,h){return m.addEventListener(d,h),{destroy:function(){m.removeEventListener(d,h)}}}function u(m,d,h){return Array.prototype.forEach.call(m,function(v){v.addEventListener(d,h)}),{destroy:function(){Array.prototype.forEach.call(m,function(v){v.removeEventListener(d,h)})}}}function p(m,d,h){return a(document.body,m,d,h)}n.exports=f},817:function(n){function o(i){var s;if(i.nodeName==="SELECT")i.focus(),s=i.value;else if(i.nodeName==="INPUT"||i.nodeName==="TEXTAREA"){var a=i.hasAttribute("readonly");a||i.setAttribute("readonly",""),i.select(),i.setSelectionRange(0,i.value.length),a||i.removeAttribute("readonly"),s=i.value}else{i.hasAttribute("contenteditable")&&i.focus();var f=window.getSelection(),c=document.createRange();c.selectNodeContents(i),f.removeAllRanges(),f.addRange(c),s=f.toString()}return s}n.exports=o},279:function(n){function o(){}o.prototype={on:function(i,s,a){var f=this.e||(this.e={});return(f[i]||(f[i]=[])).push({fn:s,ctx:a}),this},once:function(i,s,a){var f=this;function c(){f.off(i,c),s.apply(a,arguments)}return c._=s,this.on(i,c,a)},emit:function(i){var s=[].slice.call(arguments,1),a=((this.e||(this.e={}))[i]||[]).slice(),f=0,c=a.length;for(f;f{"use strict";/*! + * escape-html + * Copyright(c) 2012-2013 TJ Holowaychuk + * Copyright(c) 2015 Andreas Lubbe + * Copyright(c) 2015 Tiancheng "Timothy" Gu + * MIT Licensed + */var rs=/["'&<>]/;Yo.exports=ns;function ns(e){var t=""+e,r=rs.exec(t);if(!r)return t;var n,o="",i=0,s=0;for(i=r.index;i0&&i[i.length-1])&&(c[0]===6||c[0]===2)){r=0;continue}if(c[0]===3&&(!i||c[1]>i[0]&&c[1]=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")}function W(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),o,i=[],s;try{for(;(t===void 0||t-- >0)&&!(o=n.next()).done;)i.push(o.value)}catch(a){s={error:a}}finally{try{o&&!o.done&&(r=n.return)&&r.call(n)}finally{if(s)throw s.error}}return i}function D(e,t,r){if(r||arguments.length===2)for(var n=0,o=t.length,i;n1||a(m,d)})})}function a(m,d){try{f(n[m](d))}catch(h){p(i[0][3],h)}}function f(m){m.value instanceof et?Promise.resolve(m.value.v).then(c,u):p(i[0][2],m)}function c(m){a("next",m)}function u(m){a("throw",m)}function p(m,d){m(d),i.shift(),i.length&&a(i[0][0],i[0][1])}}function pn(e){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var t=e[Symbol.asyncIterator],r;return t?t.call(e):(e=typeof Ee=="function"?Ee(e):e[Symbol.iterator](),r={},n("next"),n("throw"),n("return"),r[Symbol.asyncIterator]=function(){return this},r);function n(i){r[i]=e[i]&&function(s){return new Promise(function(a,f){s=e[i](s),o(a,f,s.done,s.value)})}}function o(i,s,a,f){Promise.resolve(f).then(function(c){i({value:c,done:a})},s)}}function C(e){return typeof e=="function"}function at(e){var t=function(n){Error.call(n),n.stack=new Error().stack},r=e(t);return r.prototype=Object.create(Error.prototype),r.prototype.constructor=r,r}var It=at(function(e){return function(r){e(this),this.message=r?r.length+` errors occurred during unsubscription: +`+r.map(function(n,o){return o+1+") "+n.toString()}).join(` + `):"",this.name="UnsubscriptionError",this.errors=r}});function Ve(e,t){if(e){var r=e.indexOf(t);0<=r&&e.splice(r,1)}}var Ie=function(){function e(t){this.initialTeardown=t,this.closed=!1,this._parentage=null,this._finalizers=null}return e.prototype.unsubscribe=function(){var t,r,n,o,i;if(!this.closed){this.closed=!0;var s=this._parentage;if(s)if(this._parentage=null,Array.isArray(s))try{for(var a=Ee(s),f=a.next();!f.done;f=a.next()){var c=f.value;c.remove(this)}}catch(v){t={error:v}}finally{try{f&&!f.done&&(r=a.return)&&r.call(a)}finally{if(t)throw t.error}}else s.remove(this);var u=this.initialTeardown;if(C(u))try{u()}catch(v){i=v instanceof It?v.errors:[v]}var p=this._finalizers;if(p){this._finalizers=null;try{for(var m=Ee(p),d=m.next();!d.done;d=m.next()){var h=d.value;try{ln(h)}catch(v){i=i!=null?i:[],v instanceof It?i=D(D([],W(i)),W(v.errors)):i.push(v)}}}catch(v){n={error:v}}finally{try{d&&!d.done&&(o=m.return)&&o.call(m)}finally{if(n)throw n.error}}}if(i)throw new It(i)}},e.prototype.add=function(t){var r;if(t&&t!==this)if(this.closed)ln(t);else{if(t instanceof e){if(t.closed||t._hasParent(this))return;t._addParent(this)}(this._finalizers=(r=this._finalizers)!==null&&r!==void 0?r:[]).push(t)}},e.prototype._hasParent=function(t){var r=this._parentage;return r===t||Array.isArray(r)&&r.includes(t)},e.prototype._addParent=function(t){var r=this._parentage;this._parentage=Array.isArray(r)?(r.push(t),r):r?[r,t]:t},e.prototype._removeParent=function(t){var r=this._parentage;r===t?this._parentage=null:Array.isArray(r)&&Ve(r,t)},e.prototype.remove=function(t){var r=this._finalizers;r&&Ve(r,t),t instanceof e&&t._removeParent(this)},e.EMPTY=function(){var t=new e;return t.closed=!0,t}(),e}();var Sr=Ie.EMPTY;function jt(e){return e instanceof Ie||e&&"closed"in e&&C(e.remove)&&C(e.add)&&C(e.unsubscribe)}function ln(e){C(e)?e():e.unsubscribe()}var Le={onUnhandledError:null,onStoppedNotification:null,Promise:void 0,useDeprecatedSynchronousErrorHandling:!1,useDeprecatedNextContext:!1};var st={setTimeout:function(e,t){for(var r=[],n=2;n0},enumerable:!1,configurable:!0}),t.prototype._trySubscribe=function(r){return this._throwIfClosed(),e.prototype._trySubscribe.call(this,r)},t.prototype._subscribe=function(r){return this._throwIfClosed(),this._checkFinalizedStatuses(r),this._innerSubscribe(r)},t.prototype._innerSubscribe=function(r){var n=this,o=this,i=o.hasError,s=o.isStopped,a=o.observers;return i||s?Sr:(this.currentObservers=null,a.push(r),new Ie(function(){n.currentObservers=null,Ve(a,r)}))},t.prototype._checkFinalizedStatuses=function(r){var n=this,o=n.hasError,i=n.thrownError,s=n.isStopped;o?r.error(i):s&&r.complete()},t.prototype.asObservable=function(){var r=new F;return r.source=this,r},t.create=function(r,n){return new xn(r,n)},t}(F);var xn=function(e){ie(t,e);function t(r,n){var o=e.call(this)||this;return o.destination=r,o.source=n,o}return t.prototype.next=function(r){var n,o;(o=(n=this.destination)===null||n===void 0?void 0:n.next)===null||o===void 0||o.call(n,r)},t.prototype.error=function(r){var n,o;(o=(n=this.destination)===null||n===void 0?void 0:n.error)===null||o===void 0||o.call(n,r)},t.prototype.complete=function(){var r,n;(n=(r=this.destination)===null||r===void 0?void 0:r.complete)===null||n===void 0||n.call(r)},t.prototype._subscribe=function(r){var n,o;return(o=(n=this.source)===null||n===void 0?void 0:n.subscribe(r))!==null&&o!==void 0?o:Sr},t}(x);var Et={now:function(){return(Et.delegate||Date).now()},delegate:void 0};var wt=function(e){ie(t,e);function t(r,n,o){r===void 0&&(r=1/0),n===void 0&&(n=1/0),o===void 0&&(o=Et);var i=e.call(this)||this;return i._bufferSize=r,i._windowTime=n,i._timestampProvider=o,i._buffer=[],i._infiniteTimeWindow=!0,i._infiniteTimeWindow=n===1/0,i._bufferSize=Math.max(1,r),i._windowTime=Math.max(1,n),i}return t.prototype.next=function(r){var n=this,o=n.isStopped,i=n._buffer,s=n._infiniteTimeWindow,a=n._timestampProvider,f=n._windowTime;o||(i.push(r),!s&&i.push(a.now()+f)),this._trimBuffer(),e.prototype.next.call(this,r)},t.prototype._subscribe=function(r){this._throwIfClosed(),this._trimBuffer();for(var n=this._innerSubscribe(r),o=this,i=o._infiniteTimeWindow,s=o._buffer,a=s.slice(),f=0;f0?e.prototype.requestAsyncId.call(this,r,n,o):(r.actions.push(this),r._scheduled||(r._scheduled=ut.requestAnimationFrame(function(){return r.flush(void 0)})))},t.prototype.recycleAsyncId=function(r,n,o){var i;if(o===void 0&&(o=0),o!=null?o>0:this.delay>0)return e.prototype.recycleAsyncId.call(this,r,n,o);var s=r.actions;n!=null&&((i=s[s.length-1])===null||i===void 0?void 0:i.id)!==n&&(ut.cancelAnimationFrame(n),r._scheduled=void 0)},t}(Wt);var Sn=function(e){ie(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.flush=function(r){this._active=!0;var n=this._scheduled;this._scheduled=void 0;var o=this.actions,i;r=r||o.shift();do if(i=r.execute(r.state,r.delay))break;while((r=o[0])&&r.id===n&&o.shift());if(this._active=!1,i){for(;(r=o[0])&&r.id===n&&o.shift();)r.unsubscribe();throw i}},t}(Dt);var Oe=new Sn(wn);var M=new F(function(e){return e.complete()});function Vt(e){return e&&C(e.schedule)}function Cr(e){return e[e.length-1]}function Ye(e){return C(Cr(e))?e.pop():void 0}function Te(e){return Vt(Cr(e))?e.pop():void 0}function zt(e,t){return typeof Cr(e)=="number"?e.pop():t}var pt=function(e){return e&&typeof e.length=="number"&&typeof e!="function"};function Nt(e){return C(e==null?void 0:e.then)}function qt(e){return C(e[ft])}function Kt(e){return Symbol.asyncIterator&&C(e==null?void 0:e[Symbol.asyncIterator])}function Qt(e){return new TypeError("You provided "+(e!==null&&typeof e=="object"?"an invalid object":"'"+e+"'")+" where a stream was expected. You can provide an Observable, Promise, ReadableStream, Array, AsyncIterable, or Iterable.")}function zi(){return typeof Symbol!="function"||!Symbol.iterator?"@@iterator":Symbol.iterator}var Yt=zi();function Gt(e){return C(e==null?void 0:e[Yt])}function Bt(e){return un(this,arguments,function(){var r,n,o,i;return $t(this,function(s){switch(s.label){case 0:r=e.getReader(),s.label=1;case 1:s.trys.push([1,,9,10]),s.label=2;case 2:return[4,et(r.read())];case 3:return n=s.sent(),o=n.value,i=n.done,i?[4,et(void 0)]:[3,5];case 4:return[2,s.sent()];case 5:return[4,et(o)];case 6:return[4,s.sent()];case 7:return s.sent(),[3,2];case 8:return[3,10];case 9:return r.releaseLock(),[7];case 10:return[2]}})})}function Jt(e){return C(e==null?void 0:e.getReader)}function U(e){if(e instanceof F)return e;if(e!=null){if(qt(e))return Ni(e);if(pt(e))return qi(e);if(Nt(e))return Ki(e);if(Kt(e))return On(e);if(Gt(e))return Qi(e);if(Jt(e))return Yi(e)}throw Qt(e)}function Ni(e){return new F(function(t){var r=e[ft]();if(C(r.subscribe))return r.subscribe(t);throw new TypeError("Provided object does not correctly implement Symbol.observable")})}function qi(e){return new F(function(t){for(var r=0;r=2;return function(n){return n.pipe(e?A(function(o,i){return e(o,i,n)}):de,ge(1),r?He(t):Dn(function(){return new Zt}))}}function Vn(){for(var e=[],t=0;t=2,!0))}function pe(e){e===void 0&&(e={});var t=e.connector,r=t===void 0?function(){return new x}:t,n=e.resetOnError,o=n===void 0?!0:n,i=e.resetOnComplete,s=i===void 0?!0:i,a=e.resetOnRefCountZero,f=a===void 0?!0:a;return function(c){var u,p,m,d=0,h=!1,v=!1,Y=function(){p==null||p.unsubscribe(),p=void 0},B=function(){Y(),u=m=void 0,h=v=!1},N=function(){var O=u;B(),O==null||O.unsubscribe()};return y(function(O,Qe){d++,!v&&!h&&Y();var De=m=m!=null?m:r();Qe.add(function(){d--,d===0&&!v&&!h&&(p=$r(N,f))}),De.subscribe(Qe),!u&&d>0&&(u=new rt({next:function($e){return De.next($e)},error:function($e){v=!0,Y(),p=$r(B,o,$e),De.error($e)},complete:function(){h=!0,Y(),p=$r(B,s),De.complete()}}),U(O).subscribe(u))})(c)}}function $r(e,t){for(var r=[],n=2;ne.next(document)),e}function K(e,t=document){return Array.from(t.querySelectorAll(e))}function z(e,t=document){let r=ce(e,t);if(typeof r=="undefined")throw new ReferenceError(`Missing element: expected "${e}" to be present`);return r}function ce(e,t=document){return t.querySelector(e)||void 0}function _e(){return document.activeElement instanceof HTMLElement&&document.activeElement||void 0}function tr(e){return L(b(document.body,"focusin"),b(document.body,"focusout")).pipe(ke(1),l(()=>{let t=_e();return typeof t!="undefined"?e.contains(t):!1}),V(e===_e()),J())}function Xe(e){return{x:e.offsetLeft,y:e.offsetTop}}function Kn(e){return L(b(window,"load"),b(window,"resize")).pipe(Ce(0,Oe),l(()=>Xe(e)),V(Xe(e)))}function rr(e){return{x:e.scrollLeft,y:e.scrollTop}}function dt(e){return L(b(e,"scroll"),b(window,"resize")).pipe(Ce(0,Oe),l(()=>rr(e)),V(rr(e)))}var Yn=function(){if(typeof Map!="undefined")return Map;function e(t,r){var n=-1;return t.some(function(o,i){return o[0]===r?(n=i,!0):!1}),n}return function(){function t(){this.__entries__=[]}return Object.defineProperty(t.prototype,"size",{get:function(){return this.__entries__.length},enumerable:!0,configurable:!0}),t.prototype.get=function(r){var n=e(this.__entries__,r),o=this.__entries__[n];return o&&o[1]},t.prototype.set=function(r,n){var o=e(this.__entries__,r);~o?this.__entries__[o][1]=n:this.__entries__.push([r,n])},t.prototype.delete=function(r){var n=this.__entries__,o=e(n,r);~o&&n.splice(o,1)},t.prototype.has=function(r){return!!~e(this.__entries__,r)},t.prototype.clear=function(){this.__entries__.splice(0)},t.prototype.forEach=function(r,n){n===void 0&&(n=null);for(var o=0,i=this.__entries__;o0},e.prototype.connect_=function(){!Wr||this.connected_||(document.addEventListener("transitionend",this.onTransitionEnd_),window.addEventListener("resize",this.refresh),va?(this.mutationsObserver_=new MutationObserver(this.refresh),this.mutationsObserver_.observe(document,{attributes:!0,childList:!0,characterData:!0,subtree:!0})):(document.addEventListener("DOMSubtreeModified",this.refresh),this.mutationEventsAdded_=!0),this.connected_=!0)},e.prototype.disconnect_=function(){!Wr||!this.connected_||(document.removeEventListener("transitionend",this.onTransitionEnd_),window.removeEventListener("resize",this.refresh),this.mutationsObserver_&&this.mutationsObserver_.disconnect(),this.mutationEventsAdded_&&document.removeEventListener("DOMSubtreeModified",this.refresh),this.mutationsObserver_=null,this.mutationEventsAdded_=!1,this.connected_=!1)},e.prototype.onTransitionEnd_=function(t){var r=t.propertyName,n=r===void 0?"":r,o=ba.some(function(i){return!!~n.indexOf(i)});o&&this.refresh()},e.getInstance=function(){return this.instance_||(this.instance_=new e),this.instance_},e.instance_=null,e}(),Gn=function(e,t){for(var r=0,n=Object.keys(t);r0},e}(),Jn=typeof WeakMap!="undefined"?new WeakMap:new Yn,Xn=function(){function e(t){if(!(this instanceof e))throw new TypeError("Cannot call a class as a function.");if(!arguments.length)throw new TypeError("1 argument required, but only 0 present.");var r=ga.getInstance(),n=new La(t,r,this);Jn.set(this,n)}return e}();["observe","unobserve","disconnect"].forEach(function(e){Xn.prototype[e]=function(){var t;return(t=Jn.get(this))[e].apply(t,arguments)}});var Aa=function(){return typeof nr.ResizeObserver!="undefined"?nr.ResizeObserver:Xn}(),Zn=Aa;var eo=new x,Ca=$(()=>k(new Zn(e=>{for(let t of e)eo.next(t)}))).pipe(g(e=>L(ze,k(e)).pipe(R(()=>e.disconnect()))),X(1));function he(e){return{width:e.offsetWidth,height:e.offsetHeight}}function ye(e){return Ca.pipe(S(t=>t.observe(e)),g(t=>eo.pipe(A(({target:r})=>r===e),R(()=>t.unobserve(e)),l(()=>he(e)))),V(he(e)))}function bt(e){return{width:e.scrollWidth,height:e.scrollHeight}}function ar(e){let t=e.parentElement;for(;t&&(e.scrollWidth<=t.scrollWidth&&e.scrollHeight<=t.scrollHeight);)t=(e=t).parentElement;return t?e:void 0}var to=new x,Ra=$(()=>k(new IntersectionObserver(e=>{for(let t of e)to.next(t)},{threshold:0}))).pipe(g(e=>L(ze,k(e)).pipe(R(()=>e.disconnect()))),X(1));function sr(e){return Ra.pipe(S(t=>t.observe(e)),g(t=>to.pipe(A(({target:r})=>r===e),R(()=>t.unobserve(e)),l(({isIntersecting:r})=>r))))}function ro(e,t=16){return dt(e).pipe(l(({y:r})=>{let n=he(e),o=bt(e);return r>=o.height-n.height-t}),J())}var cr={drawer:z("[data-md-toggle=drawer]"),search:z("[data-md-toggle=search]")};function no(e){return cr[e].checked}function Ke(e,t){cr[e].checked!==t&&cr[e].click()}function Ue(e){let t=cr[e];return b(t,"change").pipe(l(()=>t.checked),V(t.checked))}function ka(e,t){switch(e.constructor){case HTMLInputElement:return e.type==="radio"?/^Arrow/.test(t):!0;case HTMLSelectElement:case HTMLTextAreaElement:return!0;default:return e.isContentEditable}}function Ha(){return L(b(window,"compositionstart").pipe(l(()=>!0)),b(window,"compositionend").pipe(l(()=>!1))).pipe(V(!1))}function oo(){let e=b(window,"keydown").pipe(A(t=>!(t.metaKey||t.ctrlKey)),l(t=>({mode:no("search")?"search":"global",type:t.key,claim(){t.preventDefault(),t.stopPropagation()}})),A(({mode:t,type:r})=>{if(t==="global"){let n=_e();if(typeof n!="undefined")return!ka(n,r)}return!0}),pe());return Ha().pipe(g(t=>t?M:e))}function le(){return new URL(location.href)}function ot(e){location.href=e.href}function io(){return new x}function ao(e,t){if(typeof t=="string"||typeof t=="number")e.innerHTML+=t.toString();else if(t instanceof Node)e.appendChild(t);else if(Array.isArray(t))for(let r of t)ao(e,r)}function _(e,t,...r){let n=document.createElement(e);if(t)for(let o of Object.keys(t))typeof t[o]!="undefined"&&(typeof t[o]!="boolean"?n.setAttribute(o,t[o]):n.setAttribute(o,""));for(let o of r)ao(n,o);return n}function fr(e){if(e>999){let t=+((e-950)%1e3>99);return`${((e+1e-6)/1e3).toFixed(t)}k`}else return e.toString()}function so(){return location.hash.substring(1)}function Dr(e){let t=_("a",{href:e});t.addEventListener("click",r=>r.stopPropagation()),t.click()}function Pa(e){return L(b(window,"hashchange"),e).pipe(l(so),V(so()),A(t=>t.length>0),X(1))}function co(e){return Pa(e).pipe(l(t=>ce(`[id="${t}"]`)),A(t=>typeof t!="undefined"))}function Vr(e){let t=matchMedia(e);return er(r=>t.addListener(()=>r(t.matches))).pipe(V(t.matches))}function fo(){let e=matchMedia("print");return L(b(window,"beforeprint").pipe(l(()=>!0)),b(window,"afterprint").pipe(l(()=>!1))).pipe(V(e.matches))}function zr(e,t){return e.pipe(g(r=>r?t():M))}function ur(e,t={credentials:"same-origin"}){return ue(fetch(`${e}`,t)).pipe(fe(()=>M),g(r=>r.status!==200?Ot(()=>new Error(r.statusText)):k(r)))}function We(e,t){return ur(e,t).pipe(g(r=>r.json()),X(1))}function uo(e,t){let r=new DOMParser;return ur(e,t).pipe(g(n=>n.text()),l(n=>r.parseFromString(n,"text/xml")),X(1))}function pr(e){let t=_("script",{src:e});return $(()=>(document.head.appendChild(t),L(b(t,"load"),b(t,"error").pipe(g(()=>Ot(()=>new ReferenceError(`Invalid script: ${e}`))))).pipe(l(()=>{}),R(()=>document.head.removeChild(t)),ge(1))))}function po(){return{x:Math.max(0,scrollX),y:Math.max(0,scrollY)}}function lo(){return L(b(window,"scroll",{passive:!0}),b(window,"resize",{passive:!0})).pipe(l(po),V(po()))}function mo(){return{width:innerWidth,height:innerHeight}}function ho(){return b(window,"resize",{passive:!0}).pipe(l(mo),V(mo()))}function bo(){return G([lo(),ho()]).pipe(l(([e,t])=>({offset:e,size:t})),X(1))}function lr(e,{viewport$:t,header$:r}){let n=t.pipe(ee("size")),o=G([n,r]).pipe(l(()=>Xe(e)));return G([r,t,o]).pipe(l(([{height:i},{offset:s,size:a},{x:f,y:c}])=>({offset:{x:s.x-f,y:s.y-c+i},size:a})))}(()=>{function e(n,o){parent.postMessage(n,o||"*")}function t(...n){return n.reduce((o,i)=>o.then(()=>new Promise(s=>{let a=document.createElement("script");a.src=i,a.onload=s,document.body.appendChild(a)})),Promise.resolve())}var r=class extends EventTarget{constructor(n){super(),this.url=n,this.m=i=>{i.source===this.w&&(this.dispatchEvent(new MessageEvent("message",{data:i.data})),this.onmessage&&this.onmessage(i))},this.e=(i,s,a,f,c)=>{if(s===`${this.url}`){let u=new ErrorEvent("error",{message:i,filename:s,lineno:a,colno:f,error:c});this.dispatchEvent(u),this.onerror&&this.onerror(u)}};let o=document.createElement("iframe");o.hidden=!0,document.body.appendChild(this.iframe=o),this.w.document.open(),this.w.document.write(` + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + +

Community

+

Meetings

+

We have a bi-weekly community meeting on Wednesdays at 1:00 AM US Eastern time, 10:00 AM US Western time. The main goal of these meetings is that we want to hear from you! We want to know what you're using ko for, what you'd like to see in ko, how we can make ko better for you. With any remaining time we can go through open issues and PRs.

+

We have a meeting agenda you can use to propose topics for discussion/ideas. You can also just show up and we'll figure out what to talk about.

+

Slack

+

Come discuss ko with us in the #ko-build channel on the Kubernetes Slack! +See you there!

+ + + + + + +
+
+ + +
+ +
+ +
+ + +
+ +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/configuration/index.html b/configuration/index.html new file mode 100644 index 0000000000..a179322302 --- /dev/null +++ b/configuration/index.html @@ -0,0 +1,1037 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + Configuration - ko: Easy Go Containers + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+ +
+ + + +
+
+ + + + + + + +

Configuration

+

Basic Configuration

+

Aside from certain environment variables (see below) like KO_DOCKER_REPO, you can +configure ko's behavior using a .ko.yaml file. The location of this file can be overridden with KO_CONFIG_PATH.

+

Overriding Base Images

+

By default, ko bases images on cgr.dev/chainguard/static. This is a +small image that provides the bare necessities to run your Go binary.

+

You can override this base image in two ways:

+
    +
  1. To override the base image for all images ko builds, add this line to your + .ko.yaml file:
  2. +
+
defaultBaseImage: registry.example.com/base/image
+
+

You can also use the KO_DEFAULTBASEIMAGE environment variable to set the default base image, which overrides the YAML configuration:

+
KO_DEFAULTBASEIMAGE=registry.example.com/base/image ko build .
+
+
    +
  1. To override the base image for certain importpaths:
  2. +
+
baseImageOverrides:
+  github.com/my-user/my-repo/cmd/app: registry.example.com/base/for/app
+  github.com/my-user/my-repo/cmd/foo: registry.example.com/base/for/foo
+
+

Overriding Go build settings

+

By default, ko builds the binary with no additional build flags other than +-trimpath. You can replace the default build +arguments by providing build flags and ldflags using a +GoReleaser influenced builds +configuration section in your .ko.yaml.

+
builds:
+- id: foo
+  dir: .  # default is .
+  main: ./foobar/foo
+  env:
+  - GOPRIVATE=git.internal.example.com,source.developers.google.com
+  flags:
+  - -tags
+  - netgo
+  ldflags:
+  - -s -w
+  - -extldflags "-static"
+  - -X main.version={{.Env.VERSION}}
+- id: bar
+  dir: ./bar
+  main: .  # default is .
+  env:
+  - GOCACHE=/workspace/.gocache
+  ldflags:
+  - -s
+  - -w
+
+

If your repository contains multiple modules (multiple go.mod files in +different directories), use the dir field to specify the directory where +ko should run go build.

+

ko picks the entry from builds based on the import path you request. The +import path is matched against the result of joining dir and main.

+

The paths specified in dir and main are relative to the working directory +of the ko process.

+

The ldflags default value is [].

+
+

💡 Note: Even though the configuration section is similar to the +GoReleaser builds section, +only the env, flags and ldflags fields are currently supported. Also, the +templating support is currently limited to using environment variables only.

+
+

Setting default platforms

+

By default, ko builds images based on the platform it runs on. If your target platform differs from your build platform you can specify the build platform:

+

As a parameter +See Multi-Platform Images.

+

In .ko.yaml +Add this to your .ko.yaml file:

+
defaultPlatforms:
+- linux/arm64
+- linux/amd64
+
+

You can also use the KO_DEFAULTPLATFORMS environment variable to set the default platforms, which overrides the YAML configuration:

+
KO_DEFAULTPLATFORMS=linux/arm64,linux/amd64
+
+

Environment Variables (advanced)

+

For ease of use, backward compatibility and advanced use cases, ko supports the following environment variables to +influence the build process.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
VariableDefault ValueDescription
KO_DOCKER_REPO(not set)Container repository where to push images built with ko (required)
KO_GO_PATHgogo binary to use for builds, relative or absolute path, otherwise looked up via $PATH (optional)
KO_CONFIG_PATH./ko.yamlPath to ko configuration file (optional)
KOCACHE(not set)This tells ko to store a local mapping between the go build inputs to the image layer that they produce, so go build can be skipped entirely if the layer is already present in the image registry (optional).
+

Naming Images

+

ko provides a few different strategies for naming the image it pushes, to +workaround certain registry limitations and user preferences:

+

Given KO_DOCKER_REPO=registry.example.com/repo, by default, +ko build ./cmd/app will produce an image named like +registry.example.com/repo/app-<md5>, which includes the MD5 hash of the full +import path, to avoid collisions.

+
    +
  • --preserve-import-path (-P) will include the entire importpath: + registry.example.com/repo/github.com/my-user/my-repo/cmd/app
  • +
  • --base-import-paths (-B) will omit the MD5 portion: + registry.example.com/repo/app
  • +
  • --bare will only include the KO_DOCKER_REPO: registry.example.com/repo
  • +
+

Local Publishing Options

+

ko is normally used to publish images to container image registries, +identified by KO_DOCKER_REPO.

+

ko can also load images to a local Docker daemon, if available, by setting +KO_DOCKER_REPO=ko.local, or by passing the --local (-L) flag.

+

Local images can be used as a base image for other ko images:

+
defaultBaseImage: ko.local/example/base/image
+
+

ko can also load images into a local KinD +cluster, if available, by setting KO_DOCKER_REPO=kind.local. By default this +loads into the default KinD cluster name (kind). To load into another KinD +cluster, set KIND_CLUSTER_NAME=my-other-cluster.

+ + + + + + +
+
+ + +
+ +
+ +
+ + +
+ +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/custom/main.html b/custom/main.html new file mode 100644 index 0000000000..e87d8ddd2a --- /dev/null +++ b/custom/main.html @@ -0,0 +1,11 @@ +{% extends "base.html" %} + +{% block site_meta %} + {{ super() }} + {% if page and page.meta and page.meta.ko_meta %} + + + + {% endif %} +{% endblock %} + diff --git a/custom/partials/copyright.html b/custom/partials/copyright.html new file mode 100644 index 0000000000..49dee960f3 --- /dev/null +++ b/custom/partials/copyright.html @@ -0,0 +1 @@ +The Linux Foundation® (TLF) has registered trademarks and uses trademarks. For a list of TLF trademarks, see Trademark Usage diff --git a/deployment/index.html b/deployment/index.html new file mode 100644 index 0000000000..9830c59ca3 --- /dev/null +++ b/deployment/index.html @@ -0,0 +1,900 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + Deployment - ko: Easy Go Containers + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + +

Deployment

+

See Kubernetes Integration for information about deploying to Kubernetes.

+

Because the output of ko build is an image reference, you can easily pass it to other tools that expect to take an image reference.

+

docker run

+

To run the container locally:

+
docker run -p 8080:8080 $(ko build ./cmd/app)
+
+
+

Google Cloud Run

+
gcloud run deploy --image=$(ko build ./cmd/app)
+
+
+

💡 Note: The image must be pushed to Google Container Registry or Artifact Registry.

+
+
+

fly.io

+
flyctl launch --image=$(ko build ./cmd/app)
+
+
+

💡 Note: The image must be publicly available.

+
+
+

AWS Lambda

+
aws lambda update-function-code \
+  --function-name=my-function-name \
+  --image-uri=$(ko build ./cmd/app)
+
+
+

💡 Note: The image must be pushed to ECR, based on the AWS provided base image, and use the aws-lambda-go framework. +See official docs for more information.

+
+
+

Azure Container Apps

+
az containerapp update \
+  --name my-container-app
+  --resource-group my-resource-group
+  --image $(ko build ./cmd/app)
+
+
+

💡 Note: The image must be pushed to ACR or other registry service. +See official docs for more information.

+
+ + + + + + +
+
+ + +
+ +
+ +
+ + +
+ +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/features/build-cache/index.html b/features/build-cache/index.html new file mode 100644 index 0000000000..3e56553dd5 --- /dev/null +++ b/features/build-cache/index.html @@ -0,0 +1,763 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + Build Cache - ko: Easy Go Containers + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + +

Build Cache

+

Because ko just runs go build in your normal development environment, it automatically reuses your go build cache from previous builds, making iterative development faster.

+

ko also avoids pushing blobs to the remote image registry if they're already present, making pushes faster.

+

You can make ko even faster by setting the KOCACHE environment variable. +This tells ko to store a local mapping between the go build inputs to the image layer that they produce, so go build can be skipped entirely if the layer is already present in the image registry.

+ + + + + + +
+
+ + +
+ +
+ +
+ + +
+ +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/features/k8s/index.html b/features/k8s/index.html new file mode 100644 index 0000000000..5c03f7e26c --- /dev/null +++ b/features/k8s/index.html @@ -0,0 +1,914 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + Kubernetes Integration - ko: Easy Go Containers + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + +

Kubernetes Integration

+

You could stop at just building and pushing images.

+

But, because building images is so easy with ko, and because building with +ko only requires a string importpath to identify the image, we can integrate +this with YAML generation to make Kubernetes use cases much simpler.

+

YAML Changes

+

Traditionally, you might have a Kubernetes deployment, defined in a YAML file, +that runs an image:

+
apiVersion: apps/v1
+kind: Deployment
+metadata:
+  name: my-deployment
+spec:
+  replicas: 3
+  ...
+  template:
+    spec:
+      containers:
+      - name: my-app
+        image: registry.example.com/my-app:v1.2.3
+
+

...which you apply to your cluster with kubectl apply:

+
kubectl apply -f deployment.yaml
+
+

With ko, you can instead reference your Go binary by its importpath, prefixed +with ko://:

+
    ...
+    spec:
+      containers:
+      - name: my-app
+        image: ko://github.com/my-user/my-repo/cmd/app
+
+

ko resolve

+

With this small change, running ko resolve -f deployment.yaml will instruct +ko to:

+
    +
  1. scan the YAML file(s) for values with the ko:// prefix,
  2. +
  3. for each unique ko://-prefixed string, execute ko build <importpath> to + build and push an image,
  4. +
  5. replace ko://-prefixed string(s) in the input YAML with the fully-specified + image reference of the built image(s), as above.
  6. +
  7. Print the resulting resolved YAML to stdout.
  8. +
+

The result can be redirected to a file, to distribute to others:

+
ko resolve -f config/ > release.yaml
+
+

Taken together, ko resolve aims to make packaging, pushing, and referencing +container images an invisible implementation detail of your Kubernetes +deployment, and let you focus on writing code in Go.

+

ko apply

+

To apply the resulting resolved YAML config, you can redirect the output of +ko resolve to kubectl apply:

+
ko resolve -f config/ | kubectl apply -f -
+
+

Since this is a relatively common use case, the same functionality is available +using ko apply:

+
ko apply -f config/
+
+

Also, any flags passed after -- are passed to kubectl apply directly, for example to specify context and kubeconfig:

+
ko apply -f config -- --context=foo --kubeconfig=cfg.yaml
+
+

NB: This requires that kubectl is available.

+

ko delete

+

To teardown resources applied using ko apply, you can run ko delete:

+
ko delete -f config/
+
+

This is purely a convenient alias for kubectl delete, and doesn't perform any +builds, or delete any previously built images.

+ + + + + + +
+
+ + +
+ +
+ +
+ + +
+ +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/features/multi-platform/index.html b/features/multi-platform/index.html new file mode 100644 index 0000000000..260dfd67ad --- /dev/null +++ b/features/multi-platform/index.html @@ -0,0 +1,765 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + Multi-Platform Images - ko: Easy Go Containers + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + +

Multi-Platform Images

+

Because Go supports cross-compilation to other CPU architectures and operating systems, ko excels at producing multi-platform images.

+

To build and push an image for all platforms supported by the configured base image, simply add --platform=all. +This will instruct ko to look up all the supported platforms in the base image, execute GOOS=<os> GOARCH=<arch> GOARM=<variant> go build for each platform, and produce a manifest list containing an image for each platform.

+

You can also select specific platforms, for example, --platform=linux/amd64,linux/arm64.

+

ko also has experimental support for building for Windows images. +See FAQ.

+ + + + + + +
+
+ + +
+ +
+ +
+ + +
+ +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/features/sboms/index.html b/features/sboms/index.html new file mode 100644 index 0000000000..ec5665734f --- /dev/null +++ b/features/sboms/index.html @@ -0,0 +1,764 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + SBOMs - ko: Easy Go Containers + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + +

SBOMs

+

A Software Bill of Materials (SBOM) is a list of software components that a software artifact depends on. +Having a list of dependencies can be helpful in determining whether any vulnerable components were used to build the software artifact.

+

From v0.9+, ko generates and uploads an SBOM for every image it produces by default.

+

ko will generate an SBOM in the SPDX format by default, but you can select the CycloneDX format instead with the --sbom=cyclonedx flag. To disable SBOM generation, pass --sbom=none.

+

These SBOMs can be downloaded using the cosign download sbom command.

+ + + + + + +
+
+ + +
+ +
+ +
+ + +
+ +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/features/static-assets/index.html b/features/static-assets/index.html new file mode 100644 index 0000000000..8d70fde862 --- /dev/null +++ b/features/static-assets/index.html @@ -0,0 +1,788 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + Static Assets - ko: Easy Go Containers + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + +

Static Assets

+

ko can also bundle static assets into the images it produces.

+

By convention, any contents of a directory named <importpath>/kodata/ will be +bundled into the image, and the path where it's available in the image will be +identified by the environment variable KO_DATA_PATH.

+

As an example, you can bundle and serve static contents in your image:

+
cmd/
+  app/
+    main.go
+    kodata/
+      favicon.ico
+      index.html
+
+

Then, in your main.go:

+
func main() {
+    http.Handle("/", http.FileServer(http.Dir(os.Getenv("KO_DATA_PATH"))))
+    log.Fatal(http.ListenAndServe(":8080", nil))
+}
+
+

You can simulate ko's behavior outside of the container image by setting the +KO_DATA_PATH environment variable yourself with KO_DATA_PATH=cmd/app/kodata/ go run ./cmd/app.

+
+

💡 Tip: Symlinks in kodata are followed and included as well. For example, +you can include Git commit information in your image with ln -s -r .git/HEAD ./cmd/app/kodata/

+
+

Also note that http.FileServer will not serve the Last-Modified header +(or validate If-Modified-Since request headers) because ko does not embed +timestamps by default.

+

This can be supported by manually setting the KO_DATA_DATE_EPOCH environment +variable during build (See FAQ).

+ + + + + + +
+
+ + +
+ +
+ +
+ + +
+ +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/get-started/index.html b/get-started/index.html new file mode 100644 index 0000000000..b8ea5f812a --- /dev/null +++ b/get-started/index.html @@ -0,0 +1,888 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + Get Started - ko: Easy Go Containers + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + +

Get Started

+

Setup

+

First, install ko.

+

Authenticate

+

ko depends on the authentication configured in your Docker config (typically ~/.docker/config.json).

+

If you can push an image with docker push, you are already authenticated for ko!

+

Since ko doesn't require docker, ko login also provides a surface for logging in to a container image registry with a username and password, similar to docker login.

+

Additionally, even if auth is not configured in the Docker config, ko includes built-in support for authenticating to the following container registries using credentials configured in the environment:

+ +

Choose Destination

+

ko depends on an environment variable, KO_DOCKER_REPO, to identify where it should push images that it builds. Typically this will be a remote registry, e.g.:

+
    +
  • KO_DOCKER_REPO=gcr.io/my-project, or
  • +
  • KO_DOCKER_REPO=ghcr.io/my-org/my-repo, or
  • +
  • KO_DOCKER_REPO=my-dockerhub-user
  • +
+

Build an Image

+

ko build ./cmd/app builds and pushes a container image, and prints the resulting image digest to stdout.

+

In this example, ./cmd/app must be a package main that defines func main().

+
$ ko build ./cmd/app
+...
+registry.example.com/my-project/app-099ba5bcefdead87f92606265fb99ac0@sha256:6e398316742b7aa4a93161dce4a23bc5c545700b862b43347b941000b112ec3e
+
+
+

💡 Note: Prior to v0.10, the command was called ko publish -- this is equivalent to ko build, and both commands will work and do the same thing.

+
+

The executable binary that was built from ./cmd/app is available in the image at /ko-app/app -- the binary name matches the base import path name -- and that binary is the image's entrypoint.

+ + + + + + +
+
+ + +
+ +
+ +
+ + +
+ +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/godoc/index.html b/godoc/index.html new file mode 100644 index 0000000000..ea0a09a0c9 --- /dev/null +++ b/godoc/index.html @@ -0,0 +1,15 @@ + + + + + + Redirecting... + + + + + + +Redirecting... + + diff --git a/images/android-icon-192x192.png b/images/android-icon-192x192.png new file mode 100644 index 0000000000000000000000000000000000000000..61937465a765ad3a9f95fb06aed8babbf58e4dae GIT binary patch literal 8300 zcmW++1yoc|7k>*2EWOJvjYzwMNDD~q(kUHEEFoReB`zV|pp?i0Dk&f>9Z~`c5=yr; ztf+(%-~PXI-n==)3=G5K_Y1aKW97(2;v< zSoi_}1Mhzgq-n^5Ck!(Cshay4c{%z8+WI^K0s{kuT|C`c2?_IJa;1_t6JXrLS7)MeXBP>O zbAyEJ3~7Ua@^af`58M(7=grqij5<0WHR5v1e*i1~fZ9vEesix$qgx(#h5+^!QZsQI zrEE2F@Bggdze;)YWuWgoo}tO--9NcLyR16)&!9p+(Hl%x5A~8pI5?{- z7n9@MAA5}>M{ zv&81E?8yDn?rV(42p<$RtSy!rQE*dHdUTGdv4|W)QrC4kqx*h%B2~NpLY+WGRYm`p zj&`S~Grv=&moNuMjse9lE1Wm0Wv-{q?i?1?B~49%>3T$whDN-u6dXaQ7sH(eh0@Z) zb4-NI0-%Zk+kKAtzaH|HRx)xVhL;YBeKmq>fYpkIbf0G!f$*BZs2 z;Y){M18c|DVD!wzLkmROOBQtjX;8(Ge_gFGgd+%)b-i_PR{`eeq0`}_2~x39{LSbX zdr&*O(~(sr{xh44oP>u@J&l}f+@a9w1>G@^*~(3qH;BX+bV`5EG8vEge*JRHKJ9{~ zEKix+Da5K^z`3~`|Ug@3ZN=mwG$X5Dgd(b~PC}`LtsK&X?4stJ~GD zWFa4@=ra3;)bc$3C~-v#q$&@EcjQji=05;t13Q;MJ;&{{(o=j^RDO!cZsByYqpPJlk|^oka60~h4=M* zvtX@bW_bu)%iy#v=Gg0{pEU33ILf>EnnoEW=tyJFHbfkXhUQ+n{$eq~pI_Z)`%CPm zEKnp$;=KVWJS+(RzHuCG>ea+zkza3sG$E`x?35P8Kr-{g7)}CKb~4Lh1EJ zu%nbf82f3|TB}bDuN-Zt`d!P#%auRLf?&~X)i58(?2tqr|3nW24}^3--GQfU*&gjixs3#Pw+W)8bHgO!Lh6Wh4JI&wX+kNM{i4y0tW; zDhb1fP3JB=;I6xPq<=x|8m3QHbGLi8kv`@2LsZLvJmOYi9H&$`1G=gFt6;G&>!w%j zcjPxKpzpf1xnTQG;jOGCl5XQKp?g$(Eg}DG-Hy~gJQJyiAj)-y#K&{SJ#*Bm!8xIZ zFXz2v{a(Kce3uW9+AOS3!qypQGH-~WTnI}(xLjbH32#1Rj;ka(qRXY7-TS5xnF{S7G_#+gcTQ^8-sYGco> z4VsgE#=zdYLmpCz8lEN53)D)}E|jE+)YY$U)c&1&uStdw&#MdVw{(5RwJz8w@TIC1 zcxydt&;OR{I+kvM7*|pe^^Ga2pT_LIVpV61SSU<4&l*O=OE?CTJx8XYD;4CJ9uSO{ zXuIMQE=gq0%KP*ndUnUwL#tn-zt?>t9PVF(!*%i0c^;i~g|4|b4lFbP|2O)L%nGXH zhs5I#Z`4mk46nwtdEL@U(PjJDpOXRox;pGgF0e(;8R*rvy3*rH)x-}@-Lvz*=U-*Qz)-Gl%xk{!B@Dnzl5^`C52yq4n=ME<$nmaM`3=RtsKsi zNA-W6%SqsW3y;%%smwWxFxW(CeW?8B_4n@wEwVBVfLpQU$z6k?n+EHUY5|vw2hp=- z#~jh_eStL))Q_4fKO21mYrtSz-LAaK(@r2}#gC}p&dC41H7kV!w=FpQDMDQNNXd2F zxoUP3b^6E*_vG}^cz#vY7(Xj24VwJM07+30o&7ZIct@UoI@;_vm{wiKlN+@`^Cqk&!W3LF>S#O}cj6i=0#UNgx$Spx>)#$PfURb8 zeU12O%nV{U`JyQ#@^RnmBaW;l%2Bl1(~*?9WRK*W$MurlQ*slA{rvYY*^#{dh8M1eN}X z=azca_9>IQdL}@Xw9i zJQJ3bqKC4yT^ph3_fzZjQ$x4u#tIMaKQztAN?5RX-T_kT_sJMg(Ny!6jWFj* zq$z|;X_t5~2&yxXeB}GgDI=+HD_X(*#62>kk5vcn*#`Yw?cr;%xyyJkQb+VuBr<&h z3bs8b;=W_3^M+*fH7}HCAD_F@`0|>~XlK7%>+s>XKwlJ8ls&22QL<=qFM49!Tsvw^ zpAIds5nEZ>#pwp~Q-gtVF3DU>2^+=_X-#FRTvj|9Ckx4ZW$c+7B zAN$S4qvh6`V_HHzS|es)^>B7Jtr4Qu2Di$-2)1zI($|kJg)^~HaAiLX$LmyZ^c6zW zgtBI?!5&ibO`%ES(Tuy|0HQ*n}={k zn5Tj+4~w>~HxldM8a$^_$6+rg%wZ&V^mA1v(z=x0ibi?NEVcrs6z|>{XM0V>CM7Q0 z{x0)@L2-^ASJ)5ToC5ZizX3fCfpt>lazBbc@ukv6d9_E}O)W5&`pJ(q*XwmatC*%S zS}l04zaO)&81`}EHNMwom@7wk76|C?IC&9|%pSUBKXko%m)a~*i65FnW$S=Ua<8j( zKfXmNHej#n5ZxaknV&uwkO~X1e{zGXf?g>;NFdRH@0$;7lkQxF>ii=)!4w8HSp!if z1&xp_qD(kvQc5%qOV*8Yl3PCEw=x!iF{TL#>Ae%#mHyrO+qr%xw*@f11FVFp$h`X8 zv(?nM*C3g<FVV6L=$+$@U0$r=?5eJ4=PlL)cSnU->KzGd|^nE$R3DVOk^5;ExWw^}Dsx9@x$%^}AkiF?34g1{ttCO|BP1y<1I<#wjptFy}_`q;DhS za)tWOj+iFD2z?yJK^mgTX)Ydsf-vZXm&OlDrNT^`ZhaRn<|NTaLwUia@Hjp({D%YY zx!bpSqt72idt*!?9rwET+_Ie{;VHKGs++~5w%n+;uOqX?TLk{m^Ti74YRZ&26@xS= zWDpi#I&tXIfthQEI=)>gL)}ITWqiz?ghP37F9jZ;rT6i9HZ*?cPnKf>u5MwEH{@NxGXdgohrWbsQp z&&z@*-tM!c)k)G?vd{Z>0@cz5J%u+vz}OJF{8+jVk=XYb2UCbOS=A2)cqEeR@TQvU zC)%wSf81cl&$vFf%O^RgRp`Z3@B#j5f)FN36^tb7#Hw$vyL;7x#W61JEjQT9#d*xp zKF9*9j{uW9U3t??ycYTQOF-B1D;{CC{T11aVf7*V$w8brvW)n3Zw&F z5k7O@jz0yY~&+W2&K^w=a<}cZU{?2rH8aWf`-{s|eEf(Cu=GYL- zCL)2K?G;2vjO(y%#Y7GXm-SW*W;i_-GJhg5d$&V|u3Ro-hsZKOd-64=#w01DM)`{% zT3WyC^fikvppElw{50&x&Yn%LkWC#%%y3X6`BR%YFF>`IM6y|B@fC+IP>ItgNe^Oq zufpJ2N}`Z`qc!9?zel8sSd_0aN@ab7cJgy#z0CO=J<87^K~JXSuO&fMv1ob~IP=HM z4;Gv))3Zks>7VR^94N%oH|mz@c}X(KVUxZc{#xGtPzm+81V*JiKx(udYG~1N!*m+L zSuku*m|T>5R=4<;!{`i7)Vs4eET?uOmgeCNu62Rb+s;HtxN6ZaG+w%j08*V3NUl4( za-ZP+uw0^|thnK5AUK}#YZ>=;-IoAMZ;M_0A2)5>kJrX;nFYyv?8$6me>9(m!MN=? zbx65K7WNR`eh+$8+93uO7uuB(>e)Av@1P&858Bi^L`M5I>YQ>VMf+X1_)7OO5cseBzTKf%`s5j(kRQBKMmsOIa{ z0P|J<*$N-66b=n0R$ALpMQT+Gc0(-&hot`KN0&P2-M}C4=R$7F}2Jdl@w~SQERn;)p6@C_{h0<7#gXyRSdD<0Y+67z1=m+i(9Onl9v`v~nv%bi1Wmo1l}ED> zJQ5GUW2c8EBYB0)+2baA~UMU=iWVSSzv{W>?0QBYft*QLaF} zRjsnPCXb=aZ~qWn;fUOA-HZ3{q2R~CJ~VHXICweIpj%dXH1Je{BQOvke*b%GJE(y- zZ2(Q73gfnNcNl^_xGRm!O&`i)n)uj_oj=2Peb zRA~qjco8y4%k1R^NxU7;0~M}25x2lrG{jBPzeRQ{E+pPzW{rjCSe5Km6C%L^x2=zn zh@3b^m`=QJtTNMt=eH8m8(D)QILol}Fl1Md=8E zEh=j7wk0TvwSvPAju%O$9S^j$wgJsTwpidL7!7n)0J%^K>~gKgL{~`lht~) zd17%@I1nm9BJ$rNLPi{B7c{!HSY;2H}gI*W<6y%mSP;-ot8(wqQjAF+G+p4gN*)$|geQ(gfaM<%UD8GNiK0ytj4pjy=n z|Ex=*Pbe^&CM0Q}w9V%zj@>z^EjBMXbBjB;at%#De$vS;$7@pNR9k!Q$Hhq#J2L|H zf|O&_pRy{BKoHPxNHeXl=@YBG@2?gTKYSvVP{Rv$IeMACY-W6)$-Es1}{&Sa_^z&{IAx%n7SqG3y#X@&sF}f>E=E`SMC6PdDH1*xua}l`ZK1tT%u0<-qas zqD%d&s>)Z@AP-W@?+4hvsz%AL-`OM!QLM?n$80^Sivf_YcG+e9-F>)qPK~X_vWX53c%<5+DF^a~?Z(bedzhWdt_EYV?H5AHknuzF!yCmo2ruQ?pIqb; zn>NQoOLiw`NQ0G#kt-L_Y|`b4t$+E(t9h_}KpIh`0_swL_uRWOW-f7cHnsrXl;U|i zXu?*|cVw;JR>-Z&NfBEzT;@G3(WiJS5v%b4ixh-zlEw?W`eMd$sf9%9&lB9Uhdz@h}Vj!yMfYd(=2L%|Z}No?ZNEHzUAuZZFzk zaLh|T^;PoPhDKOA)Q>Gt(9ZPEZFp#}CK^Z6YUyHqd%H+W`00 z-R=TmdztG{7HWw4_8z^J*{~}3_dKx1dj9YgH{lqpb=hq6RqNgJTiE|F9%0VjB`X;f zc)^e0B{>nBWD!zhXY{-G;xep>={iiV+hwBUixa<_dveUWdCQmInOed;o2}g1?d?Z% z+7OdY>PXrw-vXpjQnWZhUev3$yP)y)MvPf0wc6!?q|9^V%Bej$fSoRjD%RiVpM6BD z4ryu`Ybl$r-u?3w!$qZ9nOn_<4hM*v1CQ?7ERPch&u%`a!1WE5S5q~KUT+4>& z=qMYo@Hm$WrwBwZgwEHiKW)rKN%3PXtV4f?I9Wq)@^Ca0A>9UZ86A?wHbh{%70J4bCNbm%NHrN>quzBwj}jgqpnT67475ld76e7AaWd4Or`TIz~O?J54}&F2M* z^&r;_>c8p#p8g)JJo-2MCu^k!be!)~-N<5AcoB>m&_^aJ3DH^iV#Pf zh1$H`s{23B#9`X0ZR*-Avs0T;`e(;?aA%ogNxud(*u=}ZfbO#O@k5E8n+1PP@7)e* z_i7G&H)0ZhLTWxBt<)*D=oEAqK^AUNz?LUjmIweC30ZZEaxJP za(QhA$&(rV`{>z8a`#41iz#h$OeBy=(X(FH|L5Qy%~h3o^S_yYeTwJ5*`FZgF8L{r z0qpHf>-+prJqB;7oLBe#0Y`iC?BB8z>!OmzBad|f9-_!WO8yYMucBO2`)!SPN1u25 z6vezddV1sU8l^n}=0-YR8Ft?svqffEWYMfj?EO4^_c^87}X3u!GUxgWQ5WnfrD^4%m5TJ~HSgKs)gBq?{Nl_>W? zVBij3b}_0jc-PFRD%m1o7p%WFeR;Djj))l7!a$!j!>B@%8woD7T5JS#g#cLhFO^>9 z=CCbuY@=vp(F1~Xvz=WXXwWGHD@Z8wQ09ry;D9qx-j>rDr&Q|qQjYS*cL;zz>^c$9 z+8hLqORGG}`E+>ziWPMr@Or7QOJQU#C;6)g5x_t?=?!$#%$yiU@xi*?qE`w%gHOKa zS5fn469VISlAZ=omPIU1iY1H|&tfvv(X8JJcD5MEab4diRC> zX)Yo8UCa;Gw?m;mE8=M0EmxwrAz0uk4*bvcdFGdlw*(ooPoMhTE4w<>igNk$QIXx$ zSG3OsDmR`4?@}?MzRS)q`e%Q=2%bwvftO)`3QY1Muo88 zmN)#@BEHD|QB&1@l>dx@p<9UZs~|gRZROHwO+8QtJfTxtEP38U=PvcY8sPme4}FtL z_u30R)B*h6^Iw)F$3a%^h3K7c-B@Ft{f|CZxNlYveuOyIktt(&yd z$7xKUZc4G1hR-r0t^~%@bt|@<;`g{sZg#{IYMnHc z(Re79vQobDsZf%DfD#CAuV>KNzI6`Ys*rRRFCoW72|;@SY+{9^=X0*lcsE}zeee8J;_)^Vo^jLKrW&YtqNGw;LXJylKgJI#03b?~iVz2A8s3Ce(>l3}86Ol?JvROy+(Vicg7FRrU`nVmx;Pfg)*}=oD zk`N5R)JdzGE&O`h%0~mCDX-4)PZVXw=H8mBz_DuDMwv!jk`gQ=x&X`VWIiDIh1!3k fCI1!L&#yhtJJzy~Y)lA$3ILj_dMeduOyvInl#L^+ literal 0 HcmV?d00001 diff --git a/images/apple-icon-180x180.png b/images/apple-icon-180x180.png new file mode 100644 index 0000000000000000000000000000000000000000..401bee68086cc5832aae0d3680167b9dce8a4cad GIT binary patch literal 7725 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 literal 0 HcmV?d00001 diff --git a/images/apple-icon.png b/images/apple-icon.png new file mode 100644 index 0000000000000000000000000000000000000000..3bb8b0ce08363b26e8a6121572495f4d7c0dc3f8 GIT binary patch literal 6927 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.svg \ No newline at end of file diff --git a/images/demo.png b/images/demo.png new file mode 100644 index 0000000000000000000000000000000000000000..58e4fa2e26bfc6dd66560e17e529c73aafc142a7 GIT binary patch literal 243310 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

T*6y=7g}^*-ZK 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

Vq~F&1?DH?d_0hU$PGi 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%0A#%Fq1_G7N2I{6NYC9USQS^5VR`MuDPpT_%sG+ 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Ⓢ5E?+8t6*@jN~*w?Az9!jH~O zFCA^Tekb-+zgB{0#d(*KjfEqmwL#QfLP~HXgl&T>%@v7pk?}!8wR@bYCN^#_(|G5~ zXlif7H`V<;&f;9SPf<1s4fwCj#W zxNDsa!`M^Fx&`^0g(^OFXm_Y>-mLwjkd@|$*{b@pE+Wi3j%whVlC?BnEv#0-?}{)I z)8B=RpX_o|lGjdX8=DFtGZCjW9J2hW8CkexcsSL9hcclXCk_5BY(FkL`rx`+$jZUv^FzI2VIzULC5~&2}|8_s5^3P(jayiz^m#!kEmH$hN)MoFPr|aZ95Gm?5+4 z(DLg+QZR{;NP3=kQ7mKr#&VfWvPr0|c~1C%{knfC8Q$W~*QE`|#eA`7aMl=hr=_@f zmKHPr@7p^`;jj?WQWad?S3}m`U&o%pMH)i!ojf$lTn6agcIjvACa+J#UMK!csJRBF z>{j!sM{i3%v9I`4bsc3LjOJ3wLX4Ai9i-}`P34YWs0|o4KSnfNK<4sS6N_vjT58Z?;C~d-LNlS`w)Zgv*|W;!o^k zb4PAphr4a81^Tu*_f3fU`r8A)s=J4r{V(^M){sT8HpUaL*?Zrx)8?d>wF6a zZygtNX;|=7?%o6kPydmJoo?sChnM%ww1UwX`-NaWO<1G^57?K=H+*cl8Ih{cTIFgN zTuOG|JT3Qy zsCm;VNpwMKN`g%=T6V}O9g^h((W}``KL^KYVR#mh!D~xX8Z1oW5ZX-JEL(Y*F-*ze zhqY%j^LGZC+;`g&|9>v@yn$M2Ol|Zs4}QYl|0)&(p65z`MV40_;^+2&4okWw%_a{q z$Ckr)`Xa^q!7LAvwAPoG!7ISH-%7z}m3wwIsojW7rL-Q(wUk}LkRLw(obS3SfQl3F zdbe)g7_|ZX++@kObN}gz`Bzu$$V*$AW>M7}Qdc4|p}|1g zu6nWJO=;Znps2u)9>!9A-|C+E_5#9b5x^+pCx|oauoD zWyuh0oV2%7dTZl8dD>i7MtoH1u+!L9m^N`gGVp9Zhmcycq&4>o|L9NL%P;Ff**DZ3 zJi;uMVn{w;!)tEgz0O$Dx;G8`r4CqMO!_6J=QeD$Wb2w?H zkjgB*ckse71JfNlYB$N8%X_tgQlH?n67BJg-Cfws!@Lmad??`xw1a_SHoC*=Sy(ccZ zRh`Cb&A3%{ay*Wf(p99d>0>)gJ!PHOZ4t7qHtcRJ7_fC#-rR`sPZ&@fyXey z@Og0soondDyYUfIt@OQXtI*v>i7iCQssDW|Do%Vjwlg1zy%}hk?d5>(RjC*G)D+?J zZR@I%e7_*1H;=O<)7W$_TuMO<$>oliO5bA2tbTlPO|!+_T|A)zQWSwW{-~*x?5oPw z$D|~0*2?SxX$$i=ullK`STR+TnZ@!|VTV$rQ@c#6_`R5Y#V;p>=YOXmtWrm4B*9|v zwHDco^B%3UNviwY zhBr~;WC1asJF+`+jNMG! z7}~!RfR@ecsTp{N*AM-bSz!AW&ms}MZr(g!Wv*Grd_)wuRKv~kQu0Y#;UzC^Cx}&C ziBa5^gU_$&-W>9FvfiEro9zEKe14Fo?6tT<9niaKezwMP?zUQRT-K#3DB+5flDTYM zzR6;P_Mm$s*4cj4NtWdQkC)}(H_md` zj{t$HhYsHB;3$y^owtv1ZhwO_cSks*_=NG>ckk}$Ci_~fw`BT_N0H>)lX8%B@BtgK zB`@cX`7E1O>#4SJXr}@Ym|b(&p&G$)yUS>M1V~{}7Q|*rT37arw>QlbYqq*ndL72L zO9(7{8?W^C?El=0{6=e!T{7-v+W$$tt5ZE2djaW{UghW;7C+j5$DPTNwLco>Bcdel zIb_(U18HzAdtaP5#Gh)u*+94SDb6&_8Hr(PRvB|jC&#Q~MN5V0D_NdiS@L=-bu`AR zl`v6%O&X5jW}@{I&B~4Q4X=_d>kAs<^ZvO)jbv>xbxfsrf?I z<_z|fC_|fW8lkBo4>~guI)w3x94{){ZBeS@L`4(B{Hzl}JF@jo<0{I_JfAcvRt$_% z!cZM=IdEmdD)__Unk5(u{ym^zi-&HbSX`F- zwOrrpS3`DZ>(g02tn%ZZj^iKvD5X!Meb4G`M?mg`}lN+FU5BuJSk9Bj7Hh zAQ)>xeJB3(yz&{ffSo%<-Yq3RJY6Q}lO4Mipec`apBM?M+*^C6o(=V$sMXo0?CmRS zQS^MKSSA1WvDSY1GCzKAk-UQ<^pB)S`}Ar_K5;S{o$;#bjdt;|6vv-O(NbPJjyV^$ zu73zX^lZgwjA>DMkJx~=-gU2wNc#3FOYoJUZor?ao?I#H@=Z(Q9bokxxv$UoN@c9a%(Y!)qV0;!u}2!ny@$Tx7$g`XYqN000?rO30w7$KX|ME9QxPkUvQib zm(&J_#x$Gk(P){JvNu<2wY3i2#u08;cxy8BNflm%BPu6U=TaQav%Lmr;9K5nuH^1_ zq<2FO^TCl20N|a`c$@BI!%f= z|H;N>^ijcQyAs7EvDnFKIkTsP{*I?`eD>u?0#>Wt@n+tgC!`J&r=e8PyHA(y7hvJc z(mz!dqrp9WJ!0XM?Z|FnZ$9+b@<2{v?WWUhxlX6~(pkHeQP3_aMGfFi;_9oGNNd-^ z7L8HSHT}sJPqSMz;h!o7-c8BR+@dVB@&g*`+pH1*_6U)M$dcGvVclrB_ zkId|xb25jZJQO1t7A5fQHq**pn}&~!9ZA)Ej<@}&ansn$x{nx97iCPPV4U-=Fp^N^ZOMXL- z5YF#~g%E}?J`G9=73&zt$?UWnQ0MeKCm(-hPW#Ga80Xn3$w?!^*hPWVUw9s)bcwbU zeAndVeN5CkUQ#5v+v)Dbq=l8|O7a$`?a(JnN1lzZ;sA`2A2A><7DjaG@HDsD%L^kq z1xFvV2+JOB5POTWzlkS$))KdG%l-`W(&XKgMfbP+eeR6k-YGDvGuRkxwFi`t#%Iaf|ef}D+T zX359s@inByMAty;efmvbThL+5&Wk`u-@~#Rb>fwY;f*y#HDAyuS=Qk9l)Dts(i`H{IJo%Yn*6cRe znQJLDHE;7P1)b4bXDmJCb5d`k3kOSurb8|1VG! zAs}TR?XS)X@Gl-AxF?$16nHfi*-C*?9$s#rm42F!IA6?nY2DV6neu&NOM$PqMufwJF+)7bQ^bM8k5{)n3LX44E<_OyPL{w=p5J(~H@aXd|h1;uWDi&rebL&{}f9 z^oe4ra_N?Dw{~4;P&x=HUy=Lc1u3W1Oy4;%f^)!!6$O(0vKP9gc%uQKFYGZaCG92lrlI zmXIUSdT)o#J2ak|`J9nP%bcl6@J%mCT9^kRG%_KhD zZ~Iiyp;Cjxu{SrZZp>N{H{u60xbE}alLYwL^nE*7%G8y+_V#nFP7?dJ*Uh# zbj~S9Ll11Ugwbek&86UEYYcM)It(dBkFk@B9QoL!d*@>4Q`T~)0Gk32+yoEBraQ@; z4f@DX;GWo*c-_wU;5H7EfoJ$TL#_(~D8IH2MefqB#0YENvuVk+ze%*>+f@GLsrzOb zL(Tuj=c9_%jgE;Ci`D_Xqo!B$~jN?OTF2*fnaFo zrS;x)7k|J@S-l)T>CZ72eM|$Zpt++0-6)(sT;>1^fknskZGS+aHmq8Wye{p;Lr3!d z*O`=@KbZ^qn(-;ul2s!fZ8~3^!Y*o^T^T+l@r-M7*L5jEInD!t!m`Fkw1E*J0>x8+ z+D?wsXc*U<&BZpXf{&Edig_ypuQ^EN(xqri)`DPxw&yfwCl;GadGF zxvT!9m)|`qU#;shl^ zw&tBmADK@DyjOK}wzeMB^f2v!KNyJSCjDQ6^?#}LquoQh*X8V9olMr(&1!{a!0eXz0A~|R@L5 zP&-fSK$dXM$92LmdQTo+lVY#~Oj*bpCp_n71qIGc<^)j!u$R=!Fw1Sl@g@=h0Dnkrx65`mpQ;7zHcT6#3>9u4I@N91?}sEk^J5| z0GJzb7(7f+52?~CZ2t#8ohR+Y8#t9&+mq1bu?FT@-q`GVrqZtYwoQ#$a@9A4)|da^ z$@_{FGIe-LU_5f*vryJwSlYu6+|v7`39@#-k-lThIllj|{r!1K5ue;YUeU1*WjSEi z3-08-Wz^7Cz?$7JxnsD4&hNcpXrT+@Tzkv$BHMLpqPq4M_6o_FEE|a(>O=h9%k?s& z%qAt_57{;t`TX{};XE_@pakU6IbHPVH3d3Hb}XBp4&Be7|8IMa^};@D0rL`y-JWEy z+{UZ`z0QLU&QP|dQI)`Q4tvto!w9TXcVbNjk!5l04-JeB2SIbeJ;wL1;*EHE^<<720iO) zeOb{~LJT7GnRKJ?WP*l?@lFZL_xt}b1)lAcWCN@&(@{x+gW&DIs z@31hBDMc-0jB|+EEB{YK_W*WWli%j{SYYM5gSViw^q+AnY|*M@LXEcw7{&)t`6hQ1 zt?W9iOjyX&)xExq>|0u|qaVbaJF3s|G~tkLjoMrjO=!BAS{xM~N_y03ys(j16dgZW z>n$2L<&%iz#qS#&y6|1Efv}a2Oa4HNAmLiBHE+4@RN9Ub?XhK>dpA8)#$MO-lUm9Mc5IBR)26+g zk)1HmYm%o7w>U*`alzVmO+gjO&$Zq%1uRex_t~R9F=Bl_O3BQi0uwx#qw&K4Fi%3{ zAz2O4oOR#_VODSo-=8Udu)W+*B~+4u^=x~Iz=a-RY(Mylw(`0P_^ZG!;LKu)5mYXR zXWl#}GF5{gEm0$8tu+cmL^Xm ztr5L_S-Amk`@c!aggA)BnjMLa;e62vPo3Pr7c|oPrD|-K4qx3^FtfmYxz-Mbz237E z2l$ku)9~dQ5PR=4&r0a}>2V;i0`&4s5u+1bnEdT}UL$ZkMHP_VNXupmHEtRJ>Pn(7 z>b*1jG8op_uP|Yl$%0Ot%Y(AH_B!-o?Usq#Bttkt^4P2~qMo$*yYPbg156R}ROk0G zMN*A`F1jVE+JFtL8wrwX^2>*r%{X}7tM3il>}pP0>)P~@oJ7o>b;w=^)RoDWHT4xS zYlN*ecF>~Tomi%bYJohU2z~#n7{p$(BAM(|q@<;CkUb(LUf?}7>@`bH=K``|*048z zEqgode2lM{Le6p`>BR}~9=2U}Z10_5y!*$*N4a?4C1}r9TKTZg4r;l<_O6l~GVGO2 zy@uASp;?2T-z2mW|I?j1uN5%vdP?MEpa!HYdG!i4Ro46JO(}Y-W1BlZvckQJiSE~= zmd0dz#W{x{3O({`4^1q-8aL8a!o^G%E6`+RX5l!zm%mG49iyLbi{2qL^Gvy>f`}(&;Y; zSEH9bFTk8F;U$F^uBiR;)O9o)0tad#@_jMaD8e%*%Z2`54>aAvHb z5FhdD-6n&?*&n3`=#=l~Q7`MmB0hps7`n_6DOvLoH7ELMN`GM>Zr`LNGrWfDsAoEn zj>Ce-7Xky`UeUKY+p~hT?`ZpuwK*)?D_4&!8i?7^)6iw_C=AeC&!;XGc2(XriYtuD zz>OB|30<9JJ9Av_w;w3X3Ng6*CvE97+l#I8W1j`VDqB!zMv4<{1_` z6`~yp_$BF6fRnz;rq7@`RH9N@M|c*NnJ0DGUi0?H!7H-SP-brvk|8^a4c9O{a*Kn)_=N*9$>qgRPGL>jlw-i%egSft^w7gW)fkxrI zhzR|oUkyr|MLN>*;rWl1M|U^RWn%xe)~=obu+kX4?zao}6|$q7?oMyV_yeK~K(~f^ zJKy{p9Kks30~#0fKAC+m6-Cr-5k6r6EZe+1_=}GvtxtaqRo%Pg;@Z5!GfS+wao2uq z4kBievMBH5p))Ft&xTU~%JZ*;mPupzp=l}XJ`fsK4+^KG8PA+V!}*X+|K@*H`XkK7 z>OyP8Y1*lD{SKdm*tr6%dyCf%nYd&cow^zKbC#anoo)fZw!#`f$#~E`@!9d8YT*12 z8P|i=Rlky4HRMQJI&pc36wPh#7i2*PY`h=0&yJ@nYKA)QbU#};$AMP+W1|%D*66j1 zv4wIQ!eyCA4{&~bC`edpTi|=t8Kpk5R@y#$41Lzyd`3ozqFWri#f$#7?KrIi8%?3w z?B-r9bBvls`~LbSF14jZFbm%4HyAkFy{Sw*v1**UXf!6qOKANfaqPAad2bxQJ(z$= zVY?`R4$I9LXafE!zdwL5pQzW2`(ap#p zu=iU=lt=XBu1+y?@s1I#V*V`@IB5k8%r}XvJ8;q{b}Q>X8et5b#AlSc<2bA-{qM1O z*$SiGWwR4s}U>pUo>-H)7f(~w=bdO5u1!UeGe=4JYh+WO|+=X=?8Jrd8N4kH@r z64{oSfHR1-R{#<31U^%`)Fxiv;lA&i;`k6QHQwv2bK3mza>Di*5x_6x3{Lyveo-o7 zGH>@q)ek@x%A-xJUq zC#o(g!$e({Nox$G3x3Ms5)FFi{W^d<_@ClIh~aO+6;E*=c@i%lpNlVW*-z$evW$3Y z;eKwERlY5>g$fq%d3)~4_1FzHRZC-Hw; zVTeVv_>qLU0iOwgSft4{?@)0l`GY5O&c~x|skV4db|TJ$brY@!`(JeKY3*Ti{667Z zNO)CpG1L4fJ$44I{*Q+NSd#n@a4_fAdpPibnYas$-H4D27^njyj4@9}v$pEybYmhay5S@1xaVWX*CL6C8qeXtQ8|4ZWX5rH?bD57I#$WCTe*50}Pw*zT+NkEIxV82x|SNGRHh9rn%BP z+uZ5oLgOiYJqP53$R55Vdg}>q|4n8-nqdz3d-1{#DH+iyTm6>1q8-EatM{vb&G_K)QL=5)!RSV`%e>t>)uOG*3Qpg+MdQ2YLHOZ=r310F2BV}et+ZjUM)Bn~@tDj8Pj1vi) zwY}a)PF!=BA`zXv^AF}V3*K4I#s{(9{A*r^{Nb9px@o`AunAGK=*zWf7I_lzM-=|$ za4Jz~P9C%<3cb)Y^$g+fD3(THsvlG9=swGAxA|qCik_$iI+Kliom2{{e<&q-qQYf6* ztV6y}IwUn|!(=&X-Cee7A)XDTa>uS%Ohi-*(xNJob%VYEb=VI%Fh`zx9`@F!vcY~K*~z)Fdg~^CR=Qu2MDuYlg3bqzwBMgy2{huJjeJu2))Aa`X1tY3aV7I6Jf-80NPgl=}2JA+q zU7qLuafMzVL1O2UE$78RTsG}Mck6%WzdiCC04l?KoBL%KDBGVgfSoL2*KVP_vV33A zV2tSgng9Jj(6i2Y<{>!AcAr9&51&)vW}n&d2F=B17|2$^5-5Sd$}! zL7#rP321D~9?RnD-e`gbqj%TS5tK0~D=VRSfz?`?8AG2GEJN6B7 z_nx-J_zLD|Cg;SV@Ga5)P%DX?IY5s>Jl=>mbzE}8>xmnWFyc{C( zPk$;YMR-BVD)9f@<%jqA`rVUH$!`u&-}pyu&t|V!i&$9~;z$DZV!QZaETf^s)%e8{ zq-(u04bWs#LjQzNdOl*D#t|IUP&plc*uB{|G&S_2hQpO7|GzX!oX~5y{tM{EE>)gW zx!XPg%l7%F2=XTHR2}3!=J1C?TKQSMQo=!UZ3cwHshLOB%@w08?XBzWYsf`uAiEe549wx$z~L7j??Ix z-;Y-ko{npx*2<8zIa8Ag6*fbEBGvi%M$j{$kzZI_o;x1SbRCt{sUxWHs$Vb;G$^Kn zC~@u2aj#)#y5i}OBmIb~{(8kpa@-`Ou8sZfHyy9jUOC3LjdiU>VS>satFK5MR!w{yu@${sq zBJ^AU@ihfp<~f|`;r0+x>MZN|k#;O@&4LsB$A1Zs=7rP=>BU>SMBg<#CtK|0yHEZH DW&f6B literal 0 HcmV?d00001 diff --git a/images/favicon-16x16.png b/images/favicon-16x16.png new file mode 100644 index 0000000000000000000000000000000000000000..7ce269a635f14f3a8df4762997b335b0853961cf GIT binary patch literal 658 zcmV;D0&V??P)Se;u8nmO-#geH469Mc_f!&@b+XiGT(NDT1l-cUN_#vE)f=YzEoX9dmsc+o zb+5Lf`$uA9iaJanYNvY$wlsiLt{Rc`wF>vUB?5rb(ii+LY5yl^cL9~v<(``|0O<8i z2>`-=7Z`Oh-IYYrVSr>Lw;CD;M)SxmK_PG%DE1hI#1wsIG zj>Jv?9izPP;M5Urv)hc}_;zkNTWUSL$iQx0n*ES!+IxMb*Z0mGWpJhen%EM2Bqr`$ sewKXO-H8x=*TVhNOKp-TFL@QC2lonM2(JZR) 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 literal 0 HcmV?d00001 diff --git a/images/ko-with-name.svg b/images/ko-with-name.svg new file mode 100644 index 0000000000..8fb64f7bd5 --- /dev/null +++ b/images/ko-with-name.svg @@ -0,0 +1,28 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/images/ko.png b/images/ko.png new file mode 100644 index 0000000000000000000000000000000000000000..ed9142d205a19399ba8a1fc802eb69f84a526a29 GIT binary patch literal 4061 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 P00000NkvXXu0mjfStN17 literal 0 HcmV?d00001 diff --git a/images/ko.svg b/images/ko.svg new file mode 100644 index 0000000000..945ba614bb --- /dev/null +++ b/images/ko.svg @@ -0,0 +1,714 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/images/ms-icon-144x144.png b/images/ms-icon-144x144.png new file mode 100644 index 0000000000000000000000000000000000000000..ff00f42b8da76bd872e0f068b5ebab28899b2860 GIT binary patch literal 6181 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 DrcWj7 literal 0 HcmV?d00001 diff --git a/images/og.png b/images/og.png new file mode 100644 index 0000000000000000000000000000000000000000..1ed77c166e32bf5fa154560ede9b54d540b84143 GIT binary patch literal 58073 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 literal 0 HcmV?d00001 diff --git a/index.html b/index.html new file mode 100644 index 0000000000..9d3452f9af --- /dev/null +++ b/index.html @@ -0,0 +1,784 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ko: Easy Go Containers + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+
+ +
+ + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + +

Introduction

+

ko makes building Go container images easy, fast, and secure by default.

+

Demo of ko build

+

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 many dependencies on the OS base image (e.g., no cgo, no OS package dependencies).

+

ko builds images by 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!

+
+
+

ko is used and loved by these open source projects:

+ +

Add your project here!

+
+

ko is a Cloud Native Computing Foundation Sandbox project.

+

CNCF logo

+ + + + + + +
+
+ + +
+ +
+ +
+ + +
+ +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/install/index.html b/install/index.html new file mode 100644 index 0000000000..e78dedc513 --- /dev/null +++ b/install/index.html @@ -0,0 +1,891 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + Installation - ko: Easy Go Containers + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+ +
+
+ + + +
+
+ + + + + + + +

Installation

+

Install from GitHub Releases

+
$ VERSION=TODO # choose the latest version (without v prefix)
+$ OS=Linux     # or Darwin
+$ ARCH=x86_64  # or arm64, i386, s390x
+
+

We generate SLSA3 provenance using the OpenSSF's slsa-framework/slsa-github-generator. To verify our release, install the verification tool from slsa-framework/slsa-verifier#installation and verify as follows:

+
$ curl -sSfL "https://github.com/ko-build/ko/releases/download/v${VERSION}/ko_${VERSION}_${OS}_${ARCH}.tar.gz" > ko.tar.gz
+$ curl -sSfL https://github.com/ko-build/ko/releases/download/v${VERSION}/attestation.intoto.jsonl > provenance.intoto.jsonl
+$ slsa-verifier -artifact-path ko.tar.gz -provenance provenance.intoto.jsonl -source github.com/google/ko -tag "v${VERSION}"
+  PASSED: Verified SLSA provenance
+
+
$ tar xzf ko.tar.gz ko
+$ chmod +x ./ko
+
+

Install using Homebrew

+
brew install ko
+
+

Install on Alpine Linux

+

Installation on Alpine requires using the testing repository

+
echo https://dl-cdn.alpinelinux.org/alpine/edge/testing/ >> /etc/apk/repositories
+apk update
+apk add ko
+
+

Build and Install from source

+

With Go 1.16+, build and install the latest released version:

+
go install github.com/google/ko@latest
+
+

Setup on GitHub Actions

+

You can use the setup-ko action to install ko and setup auth to GitHub Container Registry in a GitHub Action workflow:

+
steps:
+- uses: imjasonh/setup-ko@v0.6
+
+ + + + + + +
+
+ + +
+ +
+ +
+ + +
+ +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/issues/index.html b/issues/index.html new file mode 100644 index 0000000000..72a7028a7b --- /dev/null +++ b/issues/index.html @@ -0,0 +1,15 @@ + + + + + + Redirecting... + + + + + + +Redirecting... + + diff --git a/prs/index.html b/prs/index.html new file mode 100644 index 0000000000..fafee4b418 --- /dev/null +++ b/prs/index.html @@ -0,0 +1,15 @@ + + + + + + Redirecting... + + + + + + +Redirecting... + + diff --git a/reference/ko/index.html b/reference/ko/index.html new file mode 100644 index 0000000000..637c469934 --- /dev/null +++ b/reference/ko/index.html @@ -0,0 +1,859 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + ko - ko: Easy Go Containers + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + +

ko

+ +

ko

+

Rapidly iterate with Go, Containers, and Kubernetes.

+
ko [flags]
+
+

Options

+
  -h, --help      help for ko
+  -v, --verbose   Enable debug logs
+
+

SEE ALSO

+
    +
  • ko apply - Apply the input files with image references resolved to built/pushed image digests.
  • +
  • ko build - Build and publish container images from the given importpaths.
  • +
  • ko create - Create the input files with image references resolved to built/pushed image digests.
  • +
  • ko delete - See "kubectl help delete" for detailed usage.
  • +
  • ko login - Log in to a registry
  • +
  • ko resolve - Print the input files with image references resolved to built/pushed image digests.
  • +
  • ko run - A variant of kubectl run that containerizes IMPORTPATH first.
  • +
  • ko version - Print ko version.
  • +
+ + + + + + +
+
+ + +
+ +
+ +
+ + +
+ +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/reference/ko_apply/index.html b/reference/ko_apply/index.html new file mode 100644 index 0000000000..16fa4013a8 --- /dev/null +++ b/reference/ko_apply/index.html @@ -0,0 +1,947 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + ko apply - ko: Easy Go Containers + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + +

ko apply

+ +

ko apply

+

Apply the input files with image references resolved to built/pushed image digests.

+

Synopsis

+

This sub-command finds import path references within the provided files, builds them into Go binaries, containerizes them, publishes them, and then feeds the resulting yaml into "kubectl apply".

+
ko apply -f FILENAME [flags]
+
+

Examples

+

+  # Build and publish import path references to a Docker
+  # Registry as:
+  #   ${KO_DOCKER_REPO}/<package name>-<hash of import path>
+  # Then, feed the resulting yaml into "kubectl apply".
+  # When KO_DOCKER_REPO is ko.local, it is the same as if
+  # --local was passed.
+  ko apply -f config/
+
+  # Build and publish import path references to a Docker
+  # Registry preserving import path names as:
+  #   ${KO_DOCKER_REPO}/<import path>
+  # Then, feed the resulting yaml into "kubectl apply".
+  ko apply --preserve-import-paths -f config/
+
+  # Build and publish import path references to a Docker
+  # daemon as:
+  #   ko.local/<import path>
+  # Then, feed the resulting yaml into "kubectl apply".
+  ko apply --local -f config/
+
+  # Apply from stdin:
+  cat config.yaml | ko apply -f -
+
+  # Any flags passed after '--' are passed to 'kubectl apply' directly:
+  ko apply -f config -- --namespace=foo --kubeconfig=cfg.yaml
+
+
+

Options

+
      --bare                     Whether to just use KO_DOCKER_REPO without additional context (may not work properly with --tags).
+  -B, --base-import-paths        Whether to use the base path without MD5 hash after KO_DOCKER_REPO (may not work properly with --tags).
+      --disable-optimizations    Disable optimizations when building Go code. Useful when you want to interactively debug the created container.
+  -f, --filename strings         Filename, directory, or URL to files to use to create the resource
+  -h, --help                     help for apply
+      --image-label strings      Which labels (key=value) to add to the image.
+      --image-refs string        Path to file where a list of the published image references will be written.
+      --insecure-registry        Whether to skip TLS verification on the registry
+  -j, --jobs int                 The maximum number of concurrent builds (default GOMAXPROCS)
+  -L, --local                    Load into images to local docker daemon.
+      --oci-layout-path string   Path to save the OCI image layout of the built images
+      --platform strings         Which platform to use when pulling a multi-platform base. Format: all | <os>[/<arch>[/<variant>]][,platform]*
+  -P, --preserve-import-paths    Whether to preserve the full import path after KO_DOCKER_REPO.
+      --push                     Push images to KO_DOCKER_REPO (default true)
+  -R, --recursive                Process the directory used in -f, --filename recursively. Useful when you want to manage related manifests organized within the same directory.
+      --sbom string              The SBOM media type to use (none will disable SBOM synthesis and upload, also supports: spdx, cyclonedx, go.version-m). (default "spdx")
+      --sbom-dir string          Path to file where the SBOM will be written.
+  -l, --selector string          Selector (label query) to filter on, supports '=', '==', and '!='.(e.g. -l key1=value1,key2=value2)
+      --tag-only                 Include tags but not digests in resolved image references. Useful when digests are not preserved when images are repopulated.
+  -t, --tags strings             Which tags to use for the produced image instead of the default 'latest' tag (may not work properly with --base-import-paths or --bare). (default [latest])
+      --tarball string           File to save images tarballs
+
+

Options inherited from parent commands

+
  -v, --verbose   Enable debug logs
+
+

SEE ALSO

+
    +
  • ko - Rapidly iterate with Go, Containers, and Kubernetes.
  • +
+ + + + + + +
+
+ + +
+ +
+ +
+ + +
+ +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/reference/ko_build/index.html b/reference/ko_build/index.html new file mode 100644 index 0000000000..076dea0f43 --- /dev/null +++ b/reference/ko_build/index.html @@ -0,0 +1,941 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + ko build - ko: Easy Go Containers + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + +

ko build

+ +

ko build

+

Build and publish container images from the given importpaths.

+

Synopsis

+

This sub-command builds the provided import paths into Go binaries, containerizes them, and publishes them.

+
ko build IMPORTPATH... [flags]
+
+

Examples

+

+  # Build and publish import path references to a Docker Registry as:
+  #   ${KO_DOCKER_REPO}/<package name>-<hash of import path>
+  # When KO_DOCKER_REPO is ko.local, it is the same as if --local and
+  # --preserve-import-paths were passed.
+  # If the import path is not provided, the current working directory is the
+  # default.
+  ko build github.com/foo/bar/cmd/baz github.com/foo/bar/cmd/blah
+
+  # Build and publish a relative import path as:
+  #   ${KO_DOCKER_REPO}/<package name>-<hash of import path>
+  # When KO_DOCKER_REPO is ko.local, it is the same as if --local and
+  # --preserve-import-paths were passed.
+  ko build ./cmd/blah
+
+  # Build and publish a relative import path as:
+  #   ${KO_DOCKER_REPO}/<import path>
+  # When KO_DOCKER_REPO is ko.local, it is the same as if --local was passed.
+  ko build --preserve-import-paths ./cmd/blah
+
+  # Build and publish import path references to a Docker daemon as:
+  #   ko.local/<import path>
+  # This always preserves import paths.
+  ko build --local github.com/foo/bar/cmd/baz github.com/foo/bar/cmd/blah
+
+

Options

+
      --bare                     Whether to just use KO_DOCKER_REPO without additional context (may not work properly with --tags).
+  -B, --base-import-paths        Whether to use the base path without MD5 hash after KO_DOCKER_REPO (may not work properly with --tags).
+      --disable-optimizations    Disable optimizations when building Go code. Useful when you want to interactively debug the created container.
+  -h, --help                     help for build
+      --image-label strings      Which labels (key=value) to add to the image.
+      --image-refs string        Path to file where a list of the published image references will be written.
+      --insecure-registry        Whether to skip TLS verification on the registry
+  -j, --jobs int                 The maximum number of concurrent builds (default GOMAXPROCS)
+  -L, --local                    Load into images to local docker daemon.
+      --oci-layout-path string   Path to save the OCI image layout of the built images
+      --platform strings         Which platform to use when pulling a multi-platform base. Format: all | <os>[/<arch>[/<variant>]][,platform]*
+  -P, --preserve-import-paths    Whether to preserve the full import path after KO_DOCKER_REPO.
+      --push                     Push images to KO_DOCKER_REPO (default true)
+      --sbom string              The SBOM media type to use (none will disable SBOM synthesis and upload, also supports: spdx, cyclonedx, go.version-m). (default "spdx")
+      --sbom-dir string          Path to file where the SBOM will be written.
+      --tag-only                 Include tags but not digests in resolved image references. Useful when digests are not preserved when images are repopulated.
+  -t, --tags strings             Which tags to use for the produced image instead of the default 'latest' tag (may not work properly with --base-import-paths or --bare). (default [latest])
+      --tarball string           File to save images tarballs
+
+

Options inherited from parent commands

+
  -v, --verbose   Enable debug logs
+
+

SEE ALSO

+
    +
  • ko - Rapidly iterate with Go, Containers, and Kubernetes.
  • +
+ + + + + + +
+
+ + +
+ +
+ +
+ + +
+ +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/reference/ko_create/index.html b/reference/ko_create/index.html new file mode 100644 index 0000000000..90cc1facc6 --- /dev/null +++ b/reference/ko_create/index.html @@ -0,0 +1,947 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + ko create - ko: Easy Go Containers + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + +

ko create

+ +

ko create

+

Create the input files with image references resolved to built/pushed image digests.

+

Synopsis

+

This sub-command finds import path references within the provided files, builds them into Go binaries, containerizes them, publishes them, and then feeds the resulting yaml into "kubectl create".

+
ko create -f FILENAME [flags]
+
+

Examples

+

+  # Build and publish import path references to a Docker
+  # Registry as:
+  #   ${KO_DOCKER_REPO}/<package name>-<hash of import path>
+  # Then, feed the resulting yaml into "kubectl create".
+  # When KO_DOCKER_REPO is ko.local, it is the same as if
+  # --local was passed.
+  ko create -f config/
+
+  # Build and publish import path references to a Docker
+  # Registry preserving import path names as:
+  #   ${KO_DOCKER_REPO}/<import path>
+  # Then, feed the resulting yaml into "kubectl create".
+  ko create --preserve-import-paths -f config/
+
+  # Build and publish import path references to a Docker
+  # daemon as:
+  #   ko.local/<import path>
+  # Then, feed the resulting yaml into "kubectl create".
+  ko create --local -f config/
+
+  # Create from stdin:
+  cat config.yaml | ko create -f -
+
+  # Any flags passed after '--' are passed to 'kubectl apply' directly:
+  ko apply -f config -- --namespace=foo --kubeconfig=cfg.yaml
+
+
+

Options

+
      --bare                     Whether to just use KO_DOCKER_REPO without additional context (may not work properly with --tags).
+  -B, --base-import-paths        Whether to use the base path without MD5 hash after KO_DOCKER_REPO (may not work properly with --tags).
+      --disable-optimizations    Disable optimizations when building Go code. Useful when you want to interactively debug the created container.
+  -f, --filename strings         Filename, directory, or URL to files to use to create the resource
+  -h, --help                     help for create
+      --image-label strings      Which labels (key=value) to add to the image.
+      --image-refs string        Path to file where a list of the published image references will be written.
+      --insecure-registry        Whether to skip TLS verification on the registry
+  -j, --jobs int                 The maximum number of concurrent builds (default GOMAXPROCS)
+  -L, --local                    Load into images to local docker daemon.
+      --oci-layout-path string   Path to save the OCI image layout of the built images
+      --platform strings         Which platform to use when pulling a multi-platform base. Format: all | <os>[/<arch>[/<variant>]][,platform]*
+  -P, --preserve-import-paths    Whether to preserve the full import path after KO_DOCKER_REPO.
+      --push                     Push images to KO_DOCKER_REPO (default true)
+  -R, --recursive                Process the directory used in -f, --filename recursively. Useful when you want to manage related manifests organized within the same directory.
+      --sbom string              The SBOM media type to use (none will disable SBOM synthesis and upload, also supports: spdx, cyclonedx, go.version-m). (default "spdx")
+      --sbom-dir string          Path to file where the SBOM will be written.
+  -l, --selector string          Selector (label query) to filter on, supports '=', '==', and '!='.(e.g. -l key1=value1,key2=value2)
+      --tag-only                 Include tags but not digests in resolved image references. Useful when digests are not preserved when images are repopulated.
+  -t, --tags strings             Which tags to use for the produced image instead of the default 'latest' tag (may not work properly with --base-import-paths or --bare). (default [latest])
+      --tarball string           File to save images tarballs
+
+

Options inherited from parent commands

+
  -v, --verbose   Enable debug logs
+
+

SEE ALSO

+
    +
  • ko - Rapidly iterate with Go, Containers, and Kubernetes.
  • +
+ + + + + + +
+
+ + +
+ +
+ +
+ + +
+ +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/reference/ko_delete/index.html b/reference/ko_delete/index.html new file mode 100644 index 0000000000..b6a5b21ff4 --- /dev/null +++ b/reference/ko_delete/index.html @@ -0,0 +1,868 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + ko delete - ko: Easy Go Containers + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + +

ko delete

+ +

ko delete

+

See "kubectl help delete" for detailed usage.

+
ko delete [flags]
+
+

Options

+
  -h, --help   help for delete
+
+

Options inherited from parent commands

+
  -v, --verbose   Enable debug logs
+
+

SEE ALSO

+
    +
  • ko - Rapidly iterate with Go, Containers, and Kubernetes.
  • +
+ + + + + + +
+
+ + +
+ +
+ +
+ + +
+ +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/reference/ko_login/index.html b/reference/ko_login/index.html new file mode 100644 index 0000000000..9a26ca1cc3 --- /dev/null +++ b/reference/ko_login/index.html @@ -0,0 +1,889 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + ko login - ko: Easy Go Containers + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + +

ko login

+ +

ko login

+

Log in to a registry

+
ko login [OPTIONS] [SERVER] [flags]
+
+

Examples

+
  # Log in to reg.example.com
+  ko login reg.example.com -u AzureDiamond -p hunter2
+
+

Options

+
  -h, --help              help for login
+  -p, --password string   Password
+      --password-stdin    Take the password from stdin
+  -u, --username string   Username
+
+

Options inherited from parent commands

+
  -v, --verbose   Enable debug logs
+
+

SEE ALSO

+
    +
  • ko - Rapidly iterate with Go, Containers, and Kubernetes.
  • +
+ + + + + + +
+
+ + +
+ +
+ +
+ + +
+ +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/reference/ko_resolve/index.html b/reference/ko_resolve/index.html new file mode 100644 index 0000000000..ae4d520f4d --- /dev/null +++ b/reference/ko_resolve/index.html @@ -0,0 +1,940 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + ko resolve - ko: Easy Go Containers + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + +

ko resolve

+ +

ko resolve

+

Print the input files with image references resolved to built/pushed image digests.

+

Synopsis

+

This sub-command finds import path references within the provided files, builds them into Go binaries, containerizes them, publishes them, and prints the resulting yaml.

+
ko resolve -f FILENAME [flags]
+
+

Examples

+

+  # Build and publish import path references to a Docker
+  # Registry as:
+  #   ${KO_DOCKER_REPO}/<package name>-<hash of import path>
+  # When KO_DOCKER_REPO is ko.local, it is the same as if
+  # --local and --preserve-import-paths were passed.
+  ko resolve -f config/
+
+  # Build and publish import path references to a Docker
+  # Registry preserving import path names as:
+  #   ${KO_DOCKER_REPO}/<import path>
+  # When KO_DOCKER_REPO is ko.local, it is the same as if
+  # --local was passed.
+  ko resolve --preserve-import-paths -f config/
+
+  # Build and publish import path references to a Docker
+  # daemon as:
+  #   ko.local/<import path>
+  # This always preserves import paths.
+  ko resolve --local -f config/
+
+

Options

+
      --bare                     Whether to just use KO_DOCKER_REPO without additional context (may not work properly with --tags).
+  -B, --base-import-paths        Whether to use the base path without MD5 hash after KO_DOCKER_REPO (may not work properly with --tags).
+      --disable-optimizations    Disable optimizations when building Go code. Useful when you want to interactively debug the created container.
+  -f, --filename strings         Filename, directory, or URL to files to use to create the resource
+  -h, --help                     help for resolve
+      --image-label strings      Which labels (key=value) to add to the image.
+      --image-refs string        Path to file where a list of the published image references will be written.
+      --insecure-registry        Whether to skip TLS verification on the registry
+  -j, --jobs int                 The maximum number of concurrent builds (default GOMAXPROCS)
+  -L, --local                    Load into images to local docker daemon.
+      --oci-layout-path string   Path to save the OCI image layout of the built images
+      --platform strings         Which platform to use when pulling a multi-platform base. Format: all | <os>[/<arch>[/<variant>]][,platform]*
+  -P, --preserve-import-paths    Whether to preserve the full import path after KO_DOCKER_REPO.
+      --push                     Push images to KO_DOCKER_REPO (default true)
+  -R, --recursive                Process the directory used in -f, --filename recursively. Useful when you want to manage related manifests organized within the same directory.
+      --sbom string              The SBOM media type to use (none will disable SBOM synthesis and upload, also supports: spdx, cyclonedx, go.version-m). (default "spdx")
+      --sbom-dir string          Path to file where the SBOM will be written.
+  -l, --selector string          Selector (label query) to filter on, supports '=', '==', and '!='.(e.g. -l key1=value1,key2=value2)
+      --tag-only                 Include tags but not digests in resolved image references. Useful when digests are not preserved when images are repopulated.
+  -t, --tags strings             Which tags to use for the produced image instead of the default 'latest' tag (may not work properly with --base-import-paths or --bare). (default [latest])
+      --tarball string           File to save images tarballs
+
+

Options inherited from parent commands

+
  -v, --verbose   Enable debug logs
+
+

SEE ALSO

+
    +
  • ko - Rapidly iterate with Go, Containers, and Kubernetes.
  • +
+ + + + + + +
+
+ + +
+ +
+ +
+ + +
+ +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/reference/ko_run/index.html b/reference/ko_run/index.html new file mode 100644 index 0000000000..e49c4a03ca --- /dev/null +++ b/reference/ko_run/index.html @@ -0,0 +1,929 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + ko run - ko: Easy Go Containers + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + +

ko run

+ +

ko run

+

A variant of kubectl run that containerizes IMPORTPATH first.

+

Synopsis

+

This sub-command combines "ko build" and "kubectl run" to support containerizing and running Go binaries on Kubernetes in a single command.

+
ko run IMPORTPATH [flags]
+
+

Examples

+

+  # Publish the image and run it on Kubernetes as:
+  #   ${KO_DOCKER_REPO}/<package name>-<hash of import path>
+  # When KO_DOCKER_REPO is ko.local, it is the same as if
+  # --local and --preserve-import-paths were passed.
+  ko run github.com/foo/bar/cmd/baz
+
+  # This supports relative import paths as well.
+  ko run ./cmd/baz
+
+  # You can also supply args and flags to the command.
+  ko run ./cmd/baz -- -v arg1 arg2 --yes
+
+

Options

+
      --bare                     Whether to just use KO_DOCKER_REPO without additional context (may not work properly with --tags).
+  -B, --base-import-paths        Whether to use the base path without MD5 hash after KO_DOCKER_REPO (may not work properly with --tags).
+      --disable-optimizations    Disable optimizations when building Go code. Useful when you want to interactively debug the created container.
+  -h, --help                     help for run
+      --image-label strings      Which labels (key=value) to add to the image.
+      --image-refs string        Path to file where a list of the published image references will be written.
+      --insecure-registry        Whether to skip TLS verification on the registry
+  -j, --jobs int                 The maximum number of concurrent builds (default GOMAXPROCS)
+  -L, --local                    Load into images to local docker daemon.
+      --oci-layout-path string   Path to save the OCI image layout of the built images
+      --platform strings         Which platform to use when pulling a multi-platform base. Format: all | <os>[/<arch>[/<variant>]][,platform]*
+  -P, --preserve-import-paths    Whether to preserve the full import path after KO_DOCKER_REPO.
+      --push                     Push images to KO_DOCKER_REPO (default true)
+      --sbom string              The SBOM media type to use (none will disable SBOM synthesis and upload, also supports: spdx, cyclonedx, go.version-m). (default "spdx")
+      --sbom-dir string          Path to file where the SBOM will be written.
+      --tag-only                 Include tags but not digests in resolved image references. Useful when digests are not preserved when images are repopulated.
+  -t, --tags strings             Which tags to use for the produced image instead of the default 'latest' tag (may not work properly with --base-import-paths or --bare). (default [latest])
+      --tarball string           File to save images tarballs
+
+

Options inherited from parent commands

+
  -v, --verbose   Enable debug logs
+
+

SEE ALSO

+
    +
  • ko - Rapidly iterate with Go, Containers, and Kubernetes.
  • +
+ + + + + + +
+
+ + +
+ +
+ +
+ + +
+ +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/reference/ko_version/index.html b/reference/ko_version/index.html new file mode 100644 index 0000000000..60f620667b --- /dev/null +++ b/reference/ko_version/index.html @@ -0,0 +1,866 @@ + + + + + + + + + + + + + + + + + + + + + + + + + ko version - ko: Easy Go Containers + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + +

ko version

+ +

ko version

+

Print ko version.

+
ko version [flags]
+
+

Options

+
  -h, --help   help for version
+
+

Options inherited from parent commands

+
  -v, --verbose   Enable debug logs
+
+

SEE ALSO

+
    +
  • ko - Rapidly iterate with Go, Containers, and Kubernetes.
  • +
+ + + + + + +
+
+ + +
+ +
+ +
+ + +
+ +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/releases/index.html b/releases/index.html new file mode 100644 index 0000000000..0b0a160209 --- /dev/null +++ b/releases/index.html @@ -0,0 +1,15 @@ + + + + + + Redirecting... + + + + + + +Redirecting... + + diff --git a/repo/index.html b/repo/index.html new file mode 100644 index 0000000000..fc85287e64 --- /dev/null +++ b/repo/index.html @@ -0,0 +1,15 @@ + + + + + + Redirecting... + + + + + + +Redirecting... + + diff --git a/search/search_index.json b/search/search_index.json new file mode 100644 index 0000000000..7394eb6db5 --- /dev/null +++ b/search/search_index.json @@ -0,0 +1 @@ +{"config":{"lang":["en"],"separator":"[\\s\\-]+","pipeline":["stopWordFilter"]},"docs":[{"location":"","title":"Introduction","text":"

ko makes building Go container images easy, fast, and secure by default.

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 many dependencies on the OS base image (e.g., no cgo, no OS package dependencies).

ko builds images by 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.

\ud83c\udfc3 Install ko and get started!

ko is used and loved by these open source projects:

  • Knative
  • Tekton
  • Karpenter
  • Kyverno
  • Sigstore
  • Shipwright

Add your project here!

ko is a Cloud Native Computing Foundation Sandbox project.

"},{"location":"community/","title":"Community","text":""},{"location":"community/#meetings","title":"Meetings","text":"

We have a bi-weekly community meeting on Wednesdays at 1:00 AM US Eastern time, 10:00 AM US Western time. The main goal of these meetings is that we want to hear from you! We want to know what you're using ko for, what you'd like to see in ko, how we can make ko better for you. With any remaining time we can go through open issues and PRs.

We have a meeting agenda you can use to propose topics for discussion/ideas. You can also just show up and we'll figure out what to talk about.

"},{"location":"community/#slack","title":"Slack","text":"

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

"},{"location":"configuration/","title":"Configuration","text":""},{"location":"configuration/#basic-configuration","title":"Basic Configuration","text":"

Aside from certain environment variables (see below) like KO_DOCKER_REPO, you can configure ko's behavior using a .ko.yaml file. The location of this file can be overridden with KO_CONFIG_PATH.

"},{"location":"configuration/#overriding-base-images","title":"Overriding Base Images","text":"

By default, ko bases images on cgr.dev/chainguard/static. This is a small image that provides the bare necessities to run your Go binary.

You can override this base image in two ways:

  1. To override the base image for all images ko builds, add this line to your .ko.yaml file:
defaultBaseImage: registry.example.com/base/image\n

You can also use the KO_DEFAULTBASEIMAGE environment variable to set the default base image, which overrides the YAML configuration:

KO_DEFAULTBASEIMAGE=registry.example.com/base/image ko build .\n
  1. To override the base image for certain importpaths:
baseImageOverrides:\n  github.com/my-user/my-repo/cmd/app: registry.example.com/base/for/app\n  github.com/my-user/my-repo/cmd/foo: registry.example.com/base/for/foo\n
"},{"location":"configuration/#overriding-go-build-settings","title":"Overriding Go build settings","text":"

By default, ko builds the binary with no additional build flags other than -trimpath. You can replace the default build arguments by providing build flags and ldflags using a GoReleaser influenced builds configuration section in your .ko.yaml.

builds:\n- id: foo\n  dir: .  # default is .\n  main: ./foobar/foo\n  env:\n  - GOPRIVATE=git.internal.example.com,source.developers.google.com\n  flags:\n  - -tags\n  - netgo\n  ldflags:\n  - -s -w\n  - -extldflags \"-static\"\n  - -X main.version={{.Env.VERSION}}\n- id: bar\n  dir: ./bar\n  main: .  # default is .\n  env:\n  - GOCACHE=/workspace/.gocache\n  ldflags:\n  - -s\n  - -w\n

If your repository contains multiple modules (multiple go.mod files in different directories), use the dir field to specify the directory where ko should run go build.

ko picks the entry from builds based on the import path you request. The import path is matched against the result of joining dir and main.

The paths specified in dir and main are relative to the working directory of the ko process.

The ldflags default value is [].

\ud83d\udca1 Note: Even though the configuration section is similar to the GoReleaser builds section, only the env, flags and ldflags fields are currently supported. Also, the templating support is currently limited to using environment variables only.

"},{"location":"configuration/#setting-default-platforms","title":"Setting default platforms","text":"

By default, ko builds images based on the platform it runs on. If your target platform differs from your build platform you can specify the build platform:

As a parameter See Multi-Platform Images.

In .ko.yaml Add this to your .ko.yaml file:

defaultPlatforms:\n- linux/arm64\n- linux/amd64\n

You can also use the KO_DEFAULTPLATFORMS environment variable to set the default platforms, which overrides the YAML configuration:

KO_DEFAULTPLATFORMS=linux/arm64,linux/amd64\n
"},{"location":"configuration/#environment-variables-advanced","title":"Environment Variables (advanced)","text":"

For ease of use, backward compatibility and advanced use cases, ko supports the following environment variables to influence the build process.

Variable Default Value Description KO_DOCKER_REPO (not set) Container repository where to push images built with ko (required) KO_GO_PATH go go binary to use for builds, relative or absolute path, otherwise looked up via $PATH (optional) KO_CONFIG_PATH ./ko.yaml Path to ko configuration file (optional) KOCACHE (not set) This tells ko to store a local mapping between the go build inputs to the image layer that they produce, so go build can be skipped entirely if the layer is already present in the image registry (optional)."},{"location":"configuration/#naming-images","title":"Naming Images","text":"

ko provides a few different strategies for naming the image it pushes, to workaround certain registry limitations and user preferences:

Given KO_DOCKER_REPO=registry.example.com/repo, by default, ko build ./cmd/app will produce an image named like registry.example.com/repo/app-<md5>, which includes the MD5 hash of the full import path, to avoid collisions.

  • --preserve-import-path (-P) will include the entire importpath: registry.example.com/repo/github.com/my-user/my-repo/cmd/app
  • --base-import-paths (-B) will omit the MD5 portion: registry.example.com/repo/app
  • --bare will only include the KO_DOCKER_REPO: registry.example.com/repo
"},{"location":"configuration/#local-publishing-options","title":"Local Publishing Options","text":"

ko is normally used to publish images to container image registries, identified by KO_DOCKER_REPO.

ko can also load images to a local Docker daemon, if available, by setting KO_DOCKER_REPO=ko.local, or by passing the --local (-L) flag.

Local images can be used as a base image for other ko images:

defaultBaseImage: ko.local/example/base/image\n

ko can also load images into a local KinD cluster, if available, by setting KO_DOCKER_REPO=kind.local. By default this loads into the default KinD cluster name (kind). To load into another KinD cluster, set KIND_CLUSTER_NAME=my-other-cluster.

"},{"location":"deployment/","title":"Deployment","text":"

See Kubernetes Integration for information about deploying to Kubernetes.

Because the output of ko build is an image reference, you can easily pass it to other tools that expect to take an image reference.

"},{"location":"deployment/#docker-run","title":"docker run","text":"

To run the container locally:

docker run -p 8080:8080 $(ko build ./cmd/app)\n
"},{"location":"deployment/#google-cloud-run","title":"Google Cloud Run","text":"
gcloud run deploy --image=$(ko build ./cmd/app)\n

\ud83d\udca1 Note: The image must be pushed to Google Container Registry or Artifact Registry.

"},{"location":"deployment/#flyio","title":"fly.io","text":"
flyctl launch --image=$(ko build ./cmd/app)\n

\ud83d\udca1 Note: The image must be publicly available.

"},{"location":"deployment/#aws-lambda","title":"AWS Lambda","text":"
aws lambda update-function-code \\\n  --function-name=my-function-name \\\n  --image-uri=$(ko build ./cmd/app)\n

\ud83d\udca1 Note: The image must be pushed to ECR, based on the AWS provided base image, and use the aws-lambda-go framework. See official docs for more information.

"},{"location":"deployment/#azure-container-apps","title":"Azure Container Apps","text":"
az containerapp update \\\n  --name my-container-app\n  --resource-group my-resource-group\n  --image $(ko build ./cmd/app)\n

\ud83d\udca1 Note: The image must be pushed to ACR or other registry service. See official docs for more information.

"},{"location":"get-started/","title":"Get Started","text":""},{"location":"get-started/#setup","title":"Setup","text":"

First, install ko.

"},{"location":"get-started/#authenticate","title":"Authenticate","text":"

ko depends on the authentication configured in your Docker config (typically ~/.docker/config.json).

\u2728 If you can push an image with docker push, you are already authenticated for ko! \u2728

Since ko doesn't require docker, ko login also provides a surface for logging in to a container image registry with a username and password, similar to docker login.

Additionally, even if auth is not configured in the Docker config, ko includes built-in support for authenticating to the following container registries using credentials configured in the environment:

  • Google Container Registry and Artifact Registry, using Application Default Credentials or auth configured in gcloud.
  • Amazon Elastic Container Registry, using AWS credentials
  • Azure Container Registry, using environment variables
  • GitHub Container Registry, using the GITHUB_TOKEN environment variable
"},{"location":"get-started/#choose-destination","title":"Choose Destination","text":"

ko depends on an environment variable, KO_DOCKER_REPO, to identify where it should push images that it builds. Typically this will be a remote registry, e.g.:

  • KO_DOCKER_REPO=gcr.io/my-project, or
  • KO_DOCKER_REPO=ghcr.io/my-org/my-repo, or
  • KO_DOCKER_REPO=my-dockerhub-user
"},{"location":"get-started/#build-an-image","title":"Build an Image","text":"

ko build ./cmd/app builds and pushes a container image, and prints the resulting image digest to stdout.

In this example, ./cmd/app must be a package main that defines func main().

$ ko build ./cmd/app\n...\nregistry.example.com/my-project/app-099ba5bcefdead87f92606265fb99ac0@sha256:6e398316742b7aa4a93161dce4a23bc5c545700b862b43347b941000b112ec3e\n

\ud83d\udca1 Note: Prior to v0.10, the command was called ko publish -- this is equivalent to ko build, and both commands will work and do the same thing.

The executable binary that was built from ./cmd/app is available in the image at /ko-app/app -- the binary name matches the base import path name -- and that binary is the image's entrypoint.

"},{"location":"install/","title":"Installation","text":""},{"location":"install/#install-from-github-releases","title":"Install from GitHub Releases","text":"
$ VERSION=TODO # choose the latest version (without v prefix)\n$ OS=Linux     # or Darwin\n$ ARCH=x86_64  # or arm64, i386, s390x\n

We generate SLSA3 provenance using the OpenSSF's slsa-framework/slsa-github-generator. To verify our release, install the verification tool from slsa-framework/slsa-verifier#installation and verify as follows:

$ curl -sSfL \"https://github.com/ko-build/ko/releases/download/v${VERSION}/ko_${VERSION}_${OS}_${ARCH}.tar.gz\" > ko.tar.gz\n$ curl -sSfL https://github.com/ko-build/ko/releases/download/v${VERSION}/attestation.intoto.jsonl > provenance.intoto.jsonl\n$ slsa-verifier -artifact-path ko.tar.gz -provenance provenance.intoto.jsonl -source github.com/google/ko -tag \"v${VERSION}\"\n  PASSED: Verified SLSA provenance\n
$ tar xzf ko.tar.gz ko\n$ chmod +x ./ko\n
"},{"location":"install/#install-using-homebrew","title":"Install using Homebrew","text":"
brew install ko\n
"},{"location":"install/#install-on-alpine-linux","title":"Install on Alpine Linux","text":"

Installation on Alpine requires using the testing repository

echo https://dl-cdn.alpinelinux.org/alpine/edge/testing/ >> /etc/apk/repositories\napk update\napk add ko\n
"},{"location":"install/#build-and-install-from-source","title":"Build and Install from source","text":"

With Go 1.16+, build and install the latest released version:

go install github.com/google/ko@latest\n
"},{"location":"install/#setup-on-github-actions","title":"Setup on GitHub Actions","text":"

You can use the setup-ko action to install ko and setup auth to GitHub Container Registry in a GitHub Action workflow:

steps:\n- uses: imjasonh/setup-ko@v0.6\n
"},{"location":"advanced/faq/","title":"Frequently Asked Questions","text":""},{"location":"advanced/faq/#how-can-i-set-ldflags","title":"How can I set ldflags?","text":"

Using -ldflags is a common way to embed version info in go binaries (In fact, we do this for ko!). Unfortunately, because ko wraps go build, it's not possible to use this flag directly; however, you can use the GOFLAGS environment variable instead:

GOFLAGS=\"-ldflags=-X=main.version=1.2.3\" ko build .\n

Currently, there is a limitation that does not allow to set multiple arguments in ldflags using GOFLAGS. Using -ldflags multiple times also does not work. In this use case, it works best to use the builds section in the .ko.yaml file.

"},{"location":"advanced/faq/#why-are-my-images-all-created-in-1970","title":"Why are my images all created in 1970?","text":"

In order to support reproducible builds, ko doesn't embed timestamps in the images it produces by default.

However, ko does respect the SOURCE_DATE_EPOCH environment variable, which will set the container image's timestamp accordingly.

Similarly, the KO_DATA_DATE_EPOCH environment variable can be used to set the modtime timestamp of the files in KO_DATA_PATH.

For example, you can set the container image's timestamp to the current timestamp by executing:

export SOURCE_DATE_EPOCH=$(date +%s)\n

or set the timestamp of the files in KO_DATA_PATH to the latest git commit's timestamp with:

export KO_DATA_DATE_EPOCH=$(git log -1 --format='%ct')\n
"},{"location":"advanced/faq/#can-i-build-windows-containers","title":"Can I build Windows containers?","text":"

Yes, but support for Windows containers is new, experimental, and tenuous. Be prepared to file bugs. \ud83d\udc1b

The default base image does not provide a Windows image. You can try out building a Windows container image by setting the base image to a Windows base image and building with --platform=windows/amd64 or --platform=all:

For example, to build a Windows container image, update your .ko.yaml to set the base image:

defaultBaseImage: mcr.microsoft.com/windows/nanoserver:ltsc2022\n

And build for windows/amd64.

ko build ./ --platform=windows/amd64\n
"},{"location":"advanced/faq/#known-issues","title":"Known issues \ud83d\udc1b","text":"
  • Symlinks in kodata are ignored when building Windows images; only regular files and directories will be included in the Windows image.
"},{"location":"advanced/faq/#does-ko-support-autocompletion","title":"Does ko support autocompletion?","text":"

Yes! ko completion generates a Bash/Zsh/Fish/PowerShell completion script. You can get how to load it from help document.

ko completion [bash|zsh|fish|powershell] --help\n

Or, you can source it directly:

source <(ko completion)\n
"},{"location":"advanced/faq/#does-ko-work-with-kustomize","title":"Does ko work with Kustomize?","text":"

Yes! ko resolve -f - will read and process input from stdin, so you can have ko easily process the output of the kustomize command.

kustomize build config | ko resolve -f -\n
"},{"location":"advanced/faq/#does-ko-integrate-with-other-build-and-development-tools","title":"Does ko integrate with other build and development tools?","text":"

Oh, you betcha. Here's a partial list:

  • ko support in Skaffold
  • ko support for goreleaser
  • ko task in the Tekton catalog
  • ko support in Carvel's kbld
  • ko extension for Tilt
"},{"location":"advanced/faq/#does-ko-work-with-openshift-internal-registry","title":"Does ko work with OpenShift Internal Registry?","text":"

Yes! Follow these steps:

  1. Connect to your OpenShift installation
  2. Expose the OpenShift Internal\u00a0Registry so you can push to it:
  3. Export your token to $HOME/.docker/config.json:
oc registry login --to=$HOME/.docker/config.json\n
  1. Create a namespace where you will push your images, i.e: ko-images
  2. Execute this command to set KO_DOCKER_REPO to publish images to the internal registry.
export KO_DOCKER_REPO=$(oc registry info --public)/ko-images\n
"},{"location":"advanced/go-packages/","title":"Go Packages","text":"

ko's functionality can be consumed as a library in a Go application.

To build an image, use pkg/build, and publish it with pkg/publish.

"},{"location":"advanced/limitations/","title":"Limitations","text":"

ko works best when your application has no dependencies on the underlying image.

This means ko is ideal when you don't require cgo, and builds are executed with CGO_ENABLED=0 by default.

To install other OS packages, make those available in your configured base image.

ko only supports Go applications. For a similar tool targeting Java applications, try Jib. For other languages, try apko and melange.

"},{"location":"advanced/migrating-from-dockerfile/","title":"Migrating from Dockerfile","text":"

If your Dockerfile looks like either of the examples in the official tutorial for writing a Dockerfile to containerize a Go application, you can easily migrate to use ko instead.

Let's review the best practice multi-stage Dockerfile in that tutorial first:

# syntax=docker/dockerfile:1\n\n##\n## Build\n##\nFROM golang:1.16-buster AS build\n\nWORKDIR /app\n\nCOPY go.mod ./\nCOPY go.sum ./\nRUN go mod download\n\nCOPY *.go ./\n\nRUN go build -o /docker-gs-ping\n\n##\n## Deploy\n##\nFROM gcr.io/distroless/base-debian10\n\nWORKDIR /\n\nCOPY --from=build /docker-gs-ping /docker-gs-ping\n\nEXPOSE 8080\n\nUSER nonroot:nonroot\n\nENTRYPOINT [\"/docker-gs-ping\"]\n

This Dockerfile:

  1. pulls the golang:1.16 image
  2. COPYs your local source into the container environment (COPYing go.mod and go.sum first and running go mod download, to cache dependencies in the container environment)
  3. RUNs go build on your source, inside the container, to produce an executable
  4. COPYs the executable built in the previous step into a new image, on top of a minimal distroless base image.

The result is a Go application built on a minimal base image, with an optimally cached build sequence.

After running docker build on this Dockerfile, don't forget to push that image to the registry so you can deploy it.

"},{"location":"advanced/migrating-from-dockerfile/#migrating-to-ko","title":"Migrating to ko","text":"

If your\u00a0Go source is laid out as described in the tutorial, and you've installed and set up your environment, you can simply run ko build ./ to build and push the container image to your registry.

You're done. You can delete your Dockerfile and uninstall docker.

ko takes advantage of your local Go build cache without needing to be told to, and it sets the ENTRYPOINT and uses a nonroot distroless base image by default.

To build a multi-arch image, simply add --platform=all. Compare this to the equivalent Docker instructions.

"},{"location":"features/build-cache/","title":"Build Cache","text":"

Because ko just runs go build in your normal development environment, it automatically reuses your go build cache from previous builds, making iterative development faster.

ko also avoids pushing blobs to the remote image registry if they're already present, making pushes faster.

You can make ko even faster by setting the KOCACHE environment variable. This tells ko to store a local mapping between the go build inputs to the image layer that they produce, so go build can be skipped entirely if the layer is already present in the image registry.

"},{"location":"features/k8s/","title":"Kubernetes Integration","text":"

You could stop at just building and pushing images.

But, because building images is so easy with ko, and because building with ko only requires a string importpath to identify the image, we can integrate this with YAML generation to make Kubernetes use cases much simpler.

"},{"location":"features/k8s/#yaml-changes","title":"YAML Changes","text":"

Traditionally, you might have a Kubernetes deployment, defined in a YAML file, that runs an image:

apiVersion: apps/v1\nkind: Deployment\nmetadata:\n  name: my-deployment\nspec:\n  replicas: 3\n  ...\n  template:\n    spec:\n      containers:\n      - name: my-app\n        image: registry.example.com/my-app:v1.2.3\n

...which you apply to your cluster with kubectl apply:

kubectl apply -f deployment.yaml\n

With ko, you can instead reference your Go binary by its importpath, prefixed with ko://:

    ...\n    spec:\n      containers:\n      - name: my-app\n        image: ko://github.com/my-user/my-repo/cmd/app\n
"},{"location":"features/k8s/#ko-resolve","title":"ko resolve","text":"

With this small change, running ko resolve -f deployment.yaml will instruct ko to:

  1. scan the YAML file(s) for values with the ko:// prefix,
  2. for each unique ko://-prefixed string, execute ko build <importpath> to build and push an image,
  3. replace ko://-prefixed string(s) in the input YAML with the fully-specified image reference of the built image(s), as above.
  4. Print the resulting resolved YAML to stdout.

The result can be redirected to a file, to distribute to others:

ko resolve -f config/ > release.yaml\n

Taken together, ko resolve aims to make packaging, pushing, and referencing container images an invisible implementation detail of your Kubernetes deployment, and let you focus on writing code in Go.

"},{"location":"features/k8s/#ko-apply","title":"ko apply","text":"

To apply the resulting resolved YAML config, you can redirect the output of ko resolve to kubectl apply:

ko resolve -f config/ | kubectl apply -f -\n

Since this is a relatively common use case, the same functionality is available using ko apply:

ko apply -f config/\n

Also, any flags passed after -- are passed to kubectl apply directly, for example to specify context and kubeconfig:

ko apply -f config -- --context=foo --kubeconfig=cfg.yaml\n

NB: This requires that kubectl is available.

"},{"location":"features/k8s/#ko-delete","title":"ko delete","text":"

To teardown resources applied using ko apply, you can run ko delete:

ko delete -f config/\n

This is purely a convenient alias for kubectl delete, and doesn't perform any builds, or delete any previously built images.

"},{"location":"features/multi-platform/","title":"Multi-Platform Images","text":"

Because Go supports cross-compilation to other CPU architectures and operating systems, ko excels at producing multi-platform images.

To build and push an image for all platforms supported by the configured base image, simply add --platform=all. This will instruct ko to look up all the supported platforms in the base image, execute GOOS=<os> GOARCH=<arch> GOARM=<variant> go build for each platform, and produce a manifest list containing an image for each platform.

You can also select specific platforms, for example, --platform=linux/amd64,linux/arm64.

ko also has experimental support for building for Windows images. See FAQ.

"},{"location":"features/sboms/","title":"SBOMs","text":"

A Software Bill of Materials (SBOM) is a list of software components that a software artifact depends on. Having a list of dependencies can be helpful in determining whether any vulnerable components were used to build the software artifact.

From v0.9+, ko generates and uploads an SBOM for every image it produces by default.

ko will generate an SBOM in the SPDX format by default, but you can select the CycloneDX format instead with the --sbom=cyclonedx flag. To disable SBOM generation, pass --sbom=none.

These SBOMs can be downloaded using the cosign download sbom command.

"},{"location":"features/static-assets/","title":"Static Assets","text":"

ko can also bundle static assets into the images it produces.

By convention, any contents of a directory named <importpath>/kodata/ will be bundled into the image, and the path where it's available in the image will be identified by the environment variable KO_DATA_PATH.

As an example, you can bundle and serve static contents in your image:

cmd/\n  app/\n    main.go\n    kodata/\n      favicon.ico\n      index.html\n

Then, in your main.go:

func main() {\n    http.Handle(\"/\", http.FileServer(http.Dir(os.Getenv(\"KO_DATA_PATH\"))))\n    log.Fatal(http.ListenAndServe(\":8080\", nil))\n}\n

You can simulate ko's behavior outside of the container image by setting the KO_DATA_PATH environment variable yourself with KO_DATA_PATH=cmd/app/kodata/ go run ./cmd/app.

\ud83d\udca1 Tip: Symlinks in kodata are followed and included as well. For example, you can include Git commit information in your image with ln -s -r .git/HEAD ./cmd/app/kodata/

Also note that http.FileServer will not serve the Last-Modified header (or validate If-Modified-Since request headers) because ko does not embed timestamps by default.

This can be supported by manually setting the KO_DATA_DATE_EPOCH environment variable during build (See FAQ).

"},{"location":"reference/ko/","title":"ko","text":""},{"location":"reference/ko/#ko","title":"ko","text":"

Rapidly iterate with Go, Containers, and Kubernetes.

ko [flags]\n
"},{"location":"reference/ko/#options","title":"Options","text":"
  -h, --help      help for ko\n  -v, --verbose   Enable debug logs\n
"},{"location":"reference/ko/#see-also","title":"SEE ALSO","text":"
  • ko apply - Apply the input files with image references resolved to built/pushed image digests.
  • ko build - Build and publish container images from the given importpaths.
  • ko create - Create the input files with image references resolved to built/pushed image digests.
  • ko delete - See \"kubectl help delete\" for detailed usage.
  • ko login - Log in to a registry
  • ko resolve - Print the input files with image references resolved to built/pushed image digests.
  • ko run - A variant of kubectl run that containerizes IMPORTPATH first.
  • ko version - Print ko version.
"},{"location":"reference/ko_apply/","title":"ko apply","text":""},{"location":"reference/ko_apply/#ko-apply","title":"ko apply","text":"

Apply the input files with image references resolved to built/pushed image digests.

"},{"location":"reference/ko_apply/#synopsis","title":"Synopsis","text":"

This sub-command finds import path references within the provided files, builds them into Go binaries, containerizes them, publishes them, and then feeds the resulting yaml into \"kubectl apply\".

ko apply -f FILENAME [flags]\n
"},{"location":"reference/ko_apply/#examples","title":"Examples","text":"
\n  # Build and publish import path references to a Docker\n  # Registry as:\n  #   ${KO_DOCKER_REPO}/<package name>-<hash of import path>\n  # Then, feed the resulting yaml into \"kubectl apply\".\n  # When KO_DOCKER_REPO is ko.local, it is the same as if\n  # --local was passed.\n  ko apply -f config/\n\n  # Build and publish import path references to a Docker\n  # Registry preserving import path names as:\n  #   ${KO_DOCKER_REPO}/<import path>\n  # Then, feed the resulting yaml into \"kubectl apply\".\n  ko apply --preserve-import-paths -f config/\n\n  # Build and publish import path references to a Docker\n  # daemon as:\n  #   ko.local/<import path>\n  # Then, feed the resulting yaml into \"kubectl apply\".\n  ko apply --local -f config/\n\n  # Apply from stdin:\n  cat config.yaml | ko apply -f -\n\n  # Any flags passed after '--' are passed to 'kubectl apply' directly:\n  ko apply -f config -- --namespace=foo --kubeconfig=cfg.yaml\n\n
"},{"location":"reference/ko_apply/#options","title":"Options","text":"
      --bare                     Whether to just use KO_DOCKER_REPO without additional context (may not work properly with --tags).\n  -B, --base-import-paths        Whether to use the base path without MD5 hash after KO_DOCKER_REPO (may not work properly with --tags).\n      --disable-optimizations    Disable optimizations when building Go code. Useful when you want to interactively debug the created container.\n  -f, --filename strings         Filename, directory, or URL to files to use to create the resource\n  -h, --help                     help for apply\n      --image-label strings      Which labels (key=value) to add to the image.\n      --image-refs string        Path to file where a list of the published image references will be written.\n      --insecure-registry        Whether to skip TLS verification on the registry\n  -j, --jobs int                 The maximum number of concurrent builds (default GOMAXPROCS)\n  -L, --local                    Load into images to local docker daemon.\n      --oci-layout-path string   Path to save the OCI image layout of the built images\n      --platform strings         Which platform to use when pulling a multi-platform base. Format: all | <os>[/<arch>[/<variant>]][,platform]*\n  -P, --preserve-import-paths    Whether to preserve the full import path after KO_DOCKER_REPO.\n      --push                     Push images to KO_DOCKER_REPO (default true)\n  -R, --recursive                Process the directory used in -f, --filename recursively. Useful when you want to manage related manifests organized within the same directory.\n      --sbom string              The SBOM media type to use (none will disable SBOM synthesis and upload, also supports: spdx, cyclonedx, go.version-m). (default \"spdx\")\n      --sbom-dir string          Path to file where the SBOM will be written.\n  -l, --selector string          Selector (label query) to filter on, supports '=', '==', and '!='.(e.g. -l key1=value1,key2=value2)\n      --tag-only                 Include tags but not digests in resolved image references. Useful when digests are not preserved when images are repopulated.\n  -t, --tags strings             Which tags to use for the produced image instead of the default 'latest' tag (may not work properly with --base-import-paths or --bare). (default [latest])\n      --tarball string           File to save images tarballs\n
"},{"location":"reference/ko_apply/#options-inherited-from-parent-commands","title":"Options inherited from parent commands","text":"
  -v, --verbose   Enable debug logs\n
"},{"location":"reference/ko_apply/#see-also","title":"SEE ALSO","text":"
  • ko - Rapidly iterate with Go, Containers, and Kubernetes.
"},{"location":"reference/ko_build/","title":"ko build","text":""},{"location":"reference/ko_build/#ko-build","title":"ko build","text":"

Build and publish container images from the given importpaths.

"},{"location":"reference/ko_build/#synopsis","title":"Synopsis","text":"

This sub-command builds the provided import paths into Go binaries, containerizes them, and publishes them.

ko build IMPORTPATH... [flags]\n
"},{"location":"reference/ko_build/#examples","title":"Examples","text":"
\n  # Build and publish import path references to a Docker Registry as:\n  #   ${KO_DOCKER_REPO}/<package name>-<hash of import path>\n  # When KO_DOCKER_REPO is ko.local, it is the same as if --local and\n  # --preserve-import-paths were passed.\n  # If the import path is not provided, the current working directory is the\n  # default.\n  ko build github.com/foo/bar/cmd/baz github.com/foo/bar/cmd/blah\n\n  # Build and publish a relative import path as:\n  #   ${KO_DOCKER_REPO}/<package name>-<hash of import path>\n  # When KO_DOCKER_REPO is ko.local, it is the same as if --local and\n  # --preserve-import-paths were passed.\n  ko build ./cmd/blah\n\n  # Build and publish a relative import path as:\n  #   ${KO_DOCKER_REPO}/<import path>\n  # When KO_DOCKER_REPO is ko.local, it is the same as if --local was passed.\n  ko build --preserve-import-paths ./cmd/blah\n\n  # Build and publish import path references to a Docker daemon as:\n  #   ko.local/<import path>\n  # This always preserves import paths.\n  ko build --local github.com/foo/bar/cmd/baz github.com/foo/bar/cmd/blah\n
"},{"location":"reference/ko_build/#options","title":"Options","text":"
      --bare                     Whether to just use KO_DOCKER_REPO without additional context (may not work properly with --tags).\n  -B, --base-import-paths        Whether to use the base path without MD5 hash after KO_DOCKER_REPO (may not work properly with --tags).\n      --disable-optimizations    Disable optimizations when building Go code. Useful when you want to interactively debug the created container.\n  -h, --help                     help for build\n      --image-label strings      Which labels (key=value) to add to the image.\n      --image-refs string        Path to file where a list of the published image references will be written.\n      --insecure-registry        Whether to skip TLS verification on the registry\n  -j, --jobs int                 The maximum number of concurrent builds (default GOMAXPROCS)\n  -L, --local                    Load into images to local docker daemon.\n      --oci-layout-path string   Path to save the OCI image layout of the built images\n      --platform strings         Which platform to use when pulling a multi-platform base. Format: all | <os>[/<arch>[/<variant>]][,platform]*\n  -P, --preserve-import-paths    Whether to preserve the full import path after KO_DOCKER_REPO.\n      --push                     Push images to KO_DOCKER_REPO (default true)\n      --sbom string              The SBOM media type to use (none will disable SBOM synthesis and upload, also supports: spdx, cyclonedx, go.version-m). (default \"spdx\")\n      --sbom-dir string          Path to file where the SBOM will be written.\n      --tag-only                 Include tags but not digests in resolved image references. Useful when digests are not preserved when images are repopulated.\n  -t, --tags strings             Which tags to use for the produced image instead of the default 'latest' tag (may not work properly with --base-import-paths or --bare). (default [latest])\n      --tarball string           File to save images tarballs\n
"},{"location":"reference/ko_build/#options-inherited-from-parent-commands","title":"Options inherited from parent commands","text":"
  -v, --verbose   Enable debug logs\n
"},{"location":"reference/ko_build/#see-also","title":"SEE ALSO","text":"
  • ko - Rapidly iterate with Go, Containers, and Kubernetes.
"},{"location":"reference/ko_create/","title":"ko create","text":""},{"location":"reference/ko_create/#ko-create","title":"ko create","text":"

Create the input files with image references resolved to built/pushed image digests.

"},{"location":"reference/ko_create/#synopsis","title":"Synopsis","text":"

This sub-command finds import path references within the provided files, builds them into Go binaries, containerizes them, publishes them, and then feeds the resulting yaml into \"kubectl create\".

ko create -f FILENAME [flags]\n
"},{"location":"reference/ko_create/#examples","title":"Examples","text":"
\n  # Build and publish import path references to a Docker\n  # Registry as:\n  #   ${KO_DOCKER_REPO}/<package name>-<hash of import path>\n  # Then, feed the resulting yaml into \"kubectl create\".\n  # When KO_DOCKER_REPO is ko.local, it is the same as if\n  # --local was passed.\n  ko create -f config/\n\n  # Build and publish import path references to a Docker\n  # Registry preserving import path names as:\n  #   ${KO_DOCKER_REPO}/<import path>\n  # Then, feed the resulting yaml into \"kubectl create\".\n  ko create --preserve-import-paths -f config/\n\n  # Build and publish import path references to a Docker\n  # daemon as:\n  #   ko.local/<import path>\n  # Then, feed the resulting yaml into \"kubectl create\".\n  ko create --local -f config/\n\n  # Create from stdin:\n  cat config.yaml | ko create -f -\n\n  # Any flags passed after '--' are passed to 'kubectl apply' directly:\n  ko apply -f config -- --namespace=foo --kubeconfig=cfg.yaml\n\n
"},{"location":"reference/ko_create/#options","title":"Options","text":"
      --bare                     Whether to just use KO_DOCKER_REPO without additional context (may not work properly with --tags).\n  -B, --base-import-paths        Whether to use the base path without MD5 hash after KO_DOCKER_REPO (may not work properly with --tags).\n      --disable-optimizations    Disable optimizations when building Go code. Useful when you want to interactively debug the created container.\n  -f, --filename strings         Filename, directory, or URL to files to use to create the resource\n  -h, --help                     help for create\n      --image-label strings      Which labels (key=value) to add to the image.\n      --image-refs string        Path to file where a list of the published image references will be written.\n      --insecure-registry        Whether to skip TLS verification on the registry\n  -j, --jobs int                 The maximum number of concurrent builds (default GOMAXPROCS)\n  -L, --local                    Load into images to local docker daemon.\n      --oci-layout-path string   Path to save the OCI image layout of the built images\n      --platform strings         Which platform to use when pulling a multi-platform base. Format: all | <os>[/<arch>[/<variant>]][,platform]*\n  -P, --preserve-import-paths    Whether to preserve the full import path after KO_DOCKER_REPO.\n      --push                     Push images to KO_DOCKER_REPO (default true)\n  -R, --recursive                Process the directory used in -f, --filename recursively. Useful when you want to manage related manifests organized within the same directory.\n      --sbom string              The SBOM media type to use (none will disable SBOM synthesis and upload, also supports: spdx, cyclonedx, go.version-m). (default \"spdx\")\n      --sbom-dir string          Path to file where the SBOM will be written.\n  -l, --selector string          Selector (label query) to filter on, supports '=', '==', and '!='.(e.g. -l key1=value1,key2=value2)\n      --tag-only                 Include tags but not digests in resolved image references. Useful when digests are not preserved when images are repopulated.\n  -t, --tags strings             Which tags to use for the produced image instead of the default 'latest' tag (may not work properly with --base-import-paths or --bare). (default [latest])\n      --tarball string           File to save images tarballs\n
"},{"location":"reference/ko_create/#options-inherited-from-parent-commands","title":"Options inherited from parent commands","text":"
  -v, --verbose   Enable debug logs\n
"},{"location":"reference/ko_create/#see-also","title":"SEE ALSO","text":"
  • ko - Rapidly iterate with Go, Containers, and Kubernetes.
"},{"location":"reference/ko_delete/","title":"ko delete","text":""},{"location":"reference/ko_delete/#ko-delete","title":"ko delete","text":"

See \"kubectl help delete\" for detailed usage.

ko delete [flags]\n
"},{"location":"reference/ko_delete/#options","title":"Options","text":"
  -h, --help   help for delete\n
"},{"location":"reference/ko_delete/#options-inherited-from-parent-commands","title":"Options inherited from parent commands","text":"
  -v, --verbose   Enable debug logs\n
"},{"location":"reference/ko_delete/#see-also","title":"SEE ALSO","text":"
  • ko - Rapidly iterate with Go, Containers, and Kubernetes.
"},{"location":"reference/ko_login/","title":"ko login","text":""},{"location":"reference/ko_login/#ko-login","title":"ko login","text":"

Log in to a registry

ko login [OPTIONS] [SERVER] [flags]\n
"},{"location":"reference/ko_login/#examples","title":"Examples","text":"
  # Log in to reg.example.com\n  ko login reg.example.com -u AzureDiamond -p hunter2\n
"},{"location":"reference/ko_login/#options","title":"Options","text":"
  -h, --help              help for login\n  -p, --password string   Password\n      --password-stdin    Take the password from stdin\n  -u, --username string   Username\n
"},{"location":"reference/ko_login/#options-inherited-from-parent-commands","title":"Options inherited from parent commands","text":"
  -v, --verbose   Enable debug logs\n
"},{"location":"reference/ko_login/#see-also","title":"SEE ALSO","text":"
  • ko - Rapidly iterate with Go, Containers, and Kubernetes.
"},{"location":"reference/ko_resolve/","title":"ko resolve","text":""},{"location":"reference/ko_resolve/#ko-resolve","title":"ko resolve","text":"

Print the input files with image references resolved to built/pushed image digests.

"},{"location":"reference/ko_resolve/#synopsis","title":"Synopsis","text":"

This sub-command finds import path references within the provided files, builds them into Go binaries, containerizes them, publishes them, and prints the resulting yaml.

ko resolve -f FILENAME [flags]\n
"},{"location":"reference/ko_resolve/#examples","title":"Examples","text":"
\n  # Build and publish import path references to a Docker\n  # Registry as:\n  #   ${KO_DOCKER_REPO}/<package name>-<hash of import path>\n  # When KO_DOCKER_REPO is ko.local, it is the same as if\n  # --local and --preserve-import-paths were passed.\n  ko resolve -f config/\n\n  # Build and publish import path references to a Docker\n  # Registry preserving import path names as:\n  #   ${KO_DOCKER_REPO}/<import path>\n  # When KO_DOCKER_REPO is ko.local, it is the same as if\n  # --local was passed.\n  ko resolve --preserve-import-paths -f config/\n\n  # Build and publish import path references to a Docker\n  # daemon as:\n  #   ko.local/<import path>\n  # This always preserves import paths.\n  ko resolve --local -f config/\n
"},{"location":"reference/ko_resolve/#options","title":"Options","text":"
      --bare                     Whether to just use KO_DOCKER_REPO without additional context (may not work properly with --tags).\n  -B, --base-import-paths        Whether to use the base path without MD5 hash after KO_DOCKER_REPO (may not work properly with --tags).\n      --disable-optimizations    Disable optimizations when building Go code. Useful when you want to interactively debug the created container.\n  -f, --filename strings         Filename, directory, or URL to files to use to create the resource\n  -h, --help                     help for resolve\n      --image-label strings      Which labels (key=value) to add to the image.\n      --image-refs string        Path to file where a list of the published image references will be written.\n      --insecure-registry        Whether to skip TLS verification on the registry\n  -j, --jobs int                 The maximum number of concurrent builds (default GOMAXPROCS)\n  -L, --local                    Load into images to local docker daemon.\n      --oci-layout-path string   Path to save the OCI image layout of the built images\n      --platform strings         Which platform to use when pulling a multi-platform base. Format: all | <os>[/<arch>[/<variant>]][,platform]*\n  -P, --preserve-import-paths    Whether to preserve the full import path after KO_DOCKER_REPO.\n      --push                     Push images to KO_DOCKER_REPO (default true)\n  -R, --recursive                Process the directory used in -f, --filename recursively. Useful when you want to manage related manifests organized within the same directory.\n      --sbom string              The SBOM media type to use (none will disable SBOM synthesis and upload, also supports: spdx, cyclonedx, go.version-m). (default \"spdx\")\n      --sbom-dir string          Path to file where the SBOM will be written.\n  -l, --selector string          Selector (label query) to filter on, supports '=', '==', and '!='.(e.g. -l key1=value1,key2=value2)\n      --tag-only                 Include tags but not digests in resolved image references. Useful when digests are not preserved when images are repopulated.\n  -t, --tags strings             Which tags to use for the produced image instead of the default 'latest' tag (may not work properly with --base-import-paths or --bare). (default [latest])\n      --tarball string           File to save images tarballs\n
"},{"location":"reference/ko_resolve/#options-inherited-from-parent-commands","title":"Options inherited from parent commands","text":"
  -v, --verbose   Enable debug logs\n
"},{"location":"reference/ko_resolve/#see-also","title":"SEE ALSO","text":"
  • ko - Rapidly iterate with Go, Containers, and Kubernetes.
"},{"location":"reference/ko_run/","title":"ko run","text":""},{"location":"reference/ko_run/#ko-run","title":"ko run","text":"

A variant of kubectl run that containerizes IMPORTPATH first.

"},{"location":"reference/ko_run/#synopsis","title":"Synopsis","text":"

This sub-command combines \"ko build\" and \"kubectl run\" to support containerizing and running Go binaries on Kubernetes in a single command.

ko run IMPORTPATH [flags]\n
"},{"location":"reference/ko_run/#examples","title":"Examples","text":"
\n  # Publish the image and run it on Kubernetes as:\n  #   ${KO_DOCKER_REPO}/<package name>-<hash of import path>\n  # When KO_DOCKER_REPO is ko.local, it is the same as if\n  # --local and --preserve-import-paths were passed.\n  ko run github.com/foo/bar/cmd/baz\n\n  # This supports relative import paths as well.\n  ko run ./cmd/baz\n\n  # You can also supply args and flags to the command.\n  ko run ./cmd/baz -- -v arg1 arg2 --yes\n
"},{"location":"reference/ko_run/#options","title":"Options","text":"
      --bare                     Whether to just use KO_DOCKER_REPO without additional context (may not work properly with --tags).\n  -B, --base-import-paths        Whether to use the base path without MD5 hash after KO_DOCKER_REPO (may not work properly with --tags).\n      --disable-optimizations    Disable optimizations when building Go code. Useful when you want to interactively debug the created container.\n  -h, --help                     help for run\n      --image-label strings      Which labels (key=value) to add to the image.\n      --image-refs string        Path to file where a list of the published image references will be written.\n      --insecure-registry        Whether to skip TLS verification on the registry\n  -j, --jobs int                 The maximum number of concurrent builds (default GOMAXPROCS)\n  -L, --local                    Load into images to local docker daemon.\n      --oci-layout-path string   Path to save the OCI image layout of the built images\n      --platform strings         Which platform to use when pulling a multi-platform base. Format: all | <os>[/<arch>[/<variant>]][,platform]*\n  -P, --preserve-import-paths    Whether to preserve the full import path after KO_DOCKER_REPO.\n      --push                     Push images to KO_DOCKER_REPO (default true)\n      --sbom string              The SBOM media type to use (none will disable SBOM synthesis and upload, also supports: spdx, cyclonedx, go.version-m). (default \"spdx\")\n      --sbom-dir string          Path to file where the SBOM will be written.\n      --tag-only                 Include tags but not digests in resolved image references. Useful when digests are not preserved when images are repopulated.\n  -t, --tags strings             Which tags to use for the produced image instead of the default 'latest' tag (may not work properly with --base-import-paths or --bare). (default [latest])\n      --tarball string           File to save images tarballs\n
"},{"location":"reference/ko_run/#options-inherited-from-parent-commands","title":"Options inherited from parent commands","text":"
  -v, --verbose   Enable debug logs\n
"},{"location":"reference/ko_run/#see-also","title":"SEE ALSO","text":"
  • ko - Rapidly iterate with Go, Containers, and Kubernetes.
"},{"location":"reference/ko_version/","title":"ko version","text":""},{"location":"reference/ko_version/#ko-version","title":"ko version","text":"

Print ko version.

ko version [flags]\n
"},{"location":"reference/ko_version/#options","title":"Options","text":"
  -h, --help   help for version\n
"},{"location":"reference/ko_version/#options-inherited-from-parent-commands","title":"Options inherited from parent commands","text":"
  -v, --verbose   Enable debug logs\n
"},{"location":"reference/ko_version/#see-also","title":"SEE ALSO","text":"
  • ko - Rapidly iterate with Go, Containers, and Kubernetes.
"}]} \ No newline at end of file diff --git a/sitemap.xml b/sitemap.xml new file mode 100644 index 0000000000..a292a71e8f --- /dev/null +++ b/sitemap.xml @@ -0,0 +1,123 @@ + + + + https://ko.build/ + 2023-07-10 + daily + + + https://ko.build/community/ + 2023-07-10 + daily + + + https://ko.build/configuration/ + 2023-07-10 + daily + + + https://ko.build/deployment/ + 2023-07-10 + daily + + + https://ko.build/get-started/ + 2023-07-10 + daily + + + https://ko.build/install/ + 2023-07-10 + daily + + + https://ko.build/advanced/faq/ + 2023-07-10 + daily + + + https://ko.build/advanced/go-packages/ + 2023-07-10 + daily + + + https://ko.build/advanced/limitations/ + 2023-07-10 + daily + + + https://ko.build/advanced/migrating-from-dockerfile/ + 2023-07-10 + daily + + + https://ko.build/features/build-cache/ + 2023-07-10 + daily + + + https://ko.build/features/k8s/ + 2023-07-10 + daily + + + https://ko.build/features/multi-platform/ + 2023-07-10 + daily + + + https://ko.build/features/sboms/ + 2023-07-10 + daily + + + https://ko.build/features/static-assets/ + 2023-07-10 + daily + + + https://ko.build/reference/ko/ + 2023-07-10 + daily + + + https://ko.build/reference/ko_apply/ + 2023-07-10 + daily + + + https://ko.build/reference/ko_build/ + 2023-07-10 + daily + + + https://ko.build/reference/ko_create/ + 2023-07-10 + daily + + + https://ko.build/reference/ko_delete/ + 2023-07-10 + daily + + + https://ko.build/reference/ko_login/ + 2023-07-10 + daily + + + https://ko.build/reference/ko_resolve/ + 2023-07-10 + daily + + + https://ko.build/reference/ko_run/ + 2023-07-10 + daily + + + https://ko.build/reference/ko_version/ + 2023-07-10 + daily + + \ No newline at end of file diff --git a/sitemap.xml.gz b/sitemap.xml.gz new file mode 100644 index 0000000000000000000000000000000000000000..bb6e7a5ac1e84cd725efac5c19e9f8458d6248a9 GIT binary patch literal 399 zcmV;A0dW2wiwFpax~pUY|8r?{Wo=<_E_iKh0L_=pZo?o9$M1cLD0f2I9o9{0dfO9h z=g9>_QTRxKw9DI%wAIwzc9~=@z+aa6$$&B4{>$0wj4_$uclEky>k7RH(s;eAKi=Qi zw%+%vZi+Txu8OfwyZV^(_{#a^a%qyu=wM7uh?*yHER)3VB5#|Qx?feLEe>v@YwK(f z{o*ARH$!L+ld+O_e32imAY~V1ziBs5tbJzdwwT63-dEqzkW^ior1%#DGy5i-cemLY`vT-s_YJC~pWwykVOt zV!6p?!$u2Ph3F^}rbBQfLzkADD;T6w*-!$Es4$iy42wh*>l4P&&Q#&3Rg=HqL@ehI tsnSWbNSDqAZ9G-Dl2U>_lZ{=R$VTq|{rrEtYge*;{|$W$-KqBu007zK!fpTn literal 0 HcmV?d00001 diff --git a/slack/index.html b/slack/index.html new file mode 100644 index 0000000000..3e39fea85c --- /dev/null +++ b/slack/index.html @@ -0,0 +1,15 @@ + + + + + + Redirecting... + + + + + + +Redirecting... + + diff --git a/terraform/index.html b/terraform/index.html new file mode 100644 index 0000000000..61e8435690 --- /dev/null +++ b/terraform/index.html @@ -0,0 +1,15 @@ + + + + + + Redirecting... + + + + + + +Redirecting... + +