- A Kubernetes cluster version 1.14 or later
- kubectl CLI
- Cluster-admin permissions for the current user
- Accessible Docker V2 Registry
-
Download the most recent github release.
kubectl apply --filename release.yaml
-
Ensure that the kpack controller has a status of
Running
usingkubectl get
.kubectl get pods --namespace kpack --watch
-
Check the logs to confirm the kpack controller started without error. You'll see something like this. If you see errors, please address them before continuing.
kubectl -n kpack logs deployment/kpack-controller -f 2019-09-27T18:49:32.373Z INFO controller/controller.go:277 Starting controller and workers 2019-09-27T18:49:32.373Z INFO controller/controller.go:287 Started workers 2019-09-27T18:49:32.373Z INFO controller/controller.go:277 Starting controller and workers 2019-09-27T18:49:32.374Z INFO controller/controller.go:287 Started workers 2019-09-27T18:49:32.374Z INFO controller/controller.go:277 Starting controller and workers 2019-09-27T18:49:32.374Z INFO controller/controller.go:287 Started workers 2019-09-27T18:49:32.374Z INFO controller/controller.go:277 Starting controller and workers 2019-09-27T18:49:32.374Z INFO controller/controller.go:277 Starting controller and workers 2019-09-27T18:49:32.374Z INFO controller/controller.go:287 Started workers 2019-09-27T18:49:32.374Z INFO controller/controller.go:287 Started workers
-
Create a ClusterBuilder resource. A ClusterBuilder is a reference to a Cloud Native Buildpacks builder image. The Builder image contains buildpacks that will be used to build images with kpack. We recommend starting with the cloudfoundry/cnb:bionic image which has support for Java, Node and Go.
apiVersion: build.pivotal.io/v1alpha1
kind: ClusterBuilder
metadata:
name: default-builder
spec:
image: cloudfoundry/cnb:bionic
Apply the ClusterBuilder yaml to the cluster
kubectl apply -f <name-of-cluster-builder-file.yaml>
Ensure that kpack has processed the builder by running
kubectl get clusterbuilder default-builder -o yaml
You should see output similar to the following:
apiVersion: build.pivotal.io/v1alpha1
kind: ClusterBuilder
metadata:
creationTimestamp: "2019-09-19T15:05:01Z"
generation: 1
name: default-builder
resourceVersion: "21823241"
selfLink: /apis/build.pivotal.io/v1alpha1/clusterbuilders/cluster-build-service-builder
uid: dabd3f65-daee-11e9-827a-42010a800176
spec:
image: cloudfoundry/cnb:bionic
status:
builderMetadata:
- key: org.cloudfoundry.nodejs
version: 0.0.2-RC3
- key: org.cloudfoundry.go-compiler
version: 0.0.24
- key: org.cloudfoundry.go-mod
version: 0.0.22
- key: org.cloudfoundry.dep
version: 0.0.21
- key: org.cloudfoundry.openjdk
version: 1.0.0-RC05
- key: org.cloudfoundry.buildsystem
version: 1.0.0-RC05
- key: org.cloudfoundry.jvmapplication
version: 1.0.0-RC05
- key: org.cloudfoundry.azureapplicationinsights
version: 1.0.0-RC05
- key: org.cloudfoundry.debug
version: 1.0.0-RC05
- key: org.cloudfoundry.googlestackdriver
version: 1.0.0-RC05
- key: org.cloudfoundry.jmx
version: 1.0.0-RC05
- key: org.cloudfoundry.procfile
version: 1.0.0-RC05
- key: org.cloudfoundry.archiveexpanding
version: 1.0.0-RC05
- key: org.cloudfoundry.tomcat
version: 1.0.0-RC05
- key: org.cloudfoundry.jdbc
version: 1.0.0-RC05
- key: org.cloudfoundry.springautoreconfiguration
version: 1.0.0-RC05
- key: org.cloudfoundry.springboot
version: 1.0.0-RC05
- key: org.cloudfoundry.distzip
version: 1.0.0-RC05
- key: org.cloudfoundry.node-engine
version: 0.0.49
- key: org.cloudfoundry.npm
version: 0.0.30
- key: org.cloudfoundry.yarn
version: 0.0.28
conditions:
- lastTransitionTime: null
status: "True"
type: Ready
latestImage: index.docker.io/cloudfoundry/cnb@sha256:e390f8c7ce696b222197a0e02687aeee6612a9815f78b6f5876de3cb3efd7ba3
observedGeneration: 1