Quickstart

This page describes how to quickly get started with PipeCD on Kubernetes.

This page is a guideline for installing PipeCD into your Kubernetes cluster and deploying a “hello world” application to that same Kubernetes cluster.

Note: It’s not required to install the PipeCD control plane to the cluster where your applications are running. Please read this blog post to understand more about PipeCD in real life use cases.

Prerequisites

  • Having a Kubernetes cluster
  • Installed kubectl and Helm (3.8.0 or later)
  • Forked the Examples repository

1. Installing control plane

helm install pipecd oci://ghcr.io/pipe-cd/chart/pipecd --version v0.38.0 \
  --namespace pipecd --create-namespace \
  --values https://raw.githubusercontent.com/pipe-cd/pipecd/v0.38.0/quickstart/control-plane-values.yaml

Once installed, use kubectl port-forward to expose the web console on your localhost:

kubectl -n pipecd port-forward svc/pipecd 8080

The PipeCD web console will be available at http://localhost:8080. To login, you can use the configured static admin account as below:

  • project name: quickstart
  • username: hello-pipecd
  • password: hello-pipecd

2. Installing a piped

Before running a piped, you have to register it on the web and take the generated ID and Key strings.

Navigate to the Piped tab on the same page as before, click on the Add button. Then you enter as:

Click on the Save button, and then you can see the piped-id and secret-key. Be sure to keep a copy for later use.

Then complete the installation by running the following command after replacing {PIPED_ID}, {PIPED_KEY}, {FORKED_GITHUB_ORG} with what you just got:

helm install piped oci://ghcr.io/pipe-cd/chart/piped --version v0.38.0 \
  --namespace pipecd \
  --set quickstart.enabled=true \
  --set quickstart.pipedId={PIPED_ID} \
  --set secret.data.piped-key={PIPED_KEY} \
  --set quickstart.gitRepoRemote=https://github.com/{FORKED_GITHUB_ORG}/examples.git

3. Registering a kubernetes application

Navigate to the Applications page, click on the ADD button on the top left corner.

Go to the ADD FROM SUGGESTIONS tab, then select:

  • Piped: dev (you just registered)
  • CloudProvider: kubernetes-default

You should see a lot of suggested applications. Select the canary application and click the SAVE button to register.

After a bit, the first deployment would be complete automatically to sync the application to the state specified in the current Git commit.

4. Let’s deploy!

Let’s get started with deployment! All you have to do is to make a PR to update the image tag, scale the replicas, or change the manifests.

For instance, open the kubernetes/canary/deployment.yaml under the forked examples' repository, then change the tag from v0.1.0 to v0.2.0.

After a short wait, a new deployment will be started to update to v0.2.0.

5. Cleanup

When you’re finished experimenting with PipeCD, you can uninstall with:

helm -n pipecd uninstall piped
helm -n pipecd uninstall pipecd
kubectl delete deploy canary -n pipecd
kubectl delete svc canary -n pipecd

What’s next?

You want to know some details on how to set up for a production environment? Visit Operating Control Plane at first. After reading that, the Operating Piped page will be for you.


Last modified May 25, 2022: Release v0.32.0 (#3675) (05a257e8)