diff --git a/Makefile b/Makefile index 7f86c48b..183137d7 100644 --- a/Makefile +++ b/Makefile @@ -1,6 +1,6 @@ # Image URL to use all building/pushing image targets -IMG ?= controller:latest +IMG ?= ghcr.io/aenix-io/etcd-operator:latest # ENVTEST_K8S_VERSION refers to the version of kubebuilder assets to be downloaded by envtest binary. ENVTEST_K8S_VERSION = 1.29.0 @@ -122,7 +122,7 @@ build-installer: manifests generate kustomize ## Generate a consolidated YAML wi $(KUSTOMIZE) build config/crd > dist/install.yaml; \ fi echo "---" >> dist/install.yaml # Add a document separator before appending - cd config/manager && $(KUSTOMIZE) edit set image controller=${IMG} + cd config/manager && $(KUSTOMIZE) edit set image ghcr.io/aenix-io/etcd-operator=${IMG} $(KUSTOMIZE) build config/default >> dist/install.yaml ##@ Deployment @@ -141,7 +141,7 @@ uninstall: manifests kustomize ## Uninstall CRDs from the K8s cluster specified .PHONY: deploy deploy: manifests kustomize ## Deploy controller to the K8s cluster specified in ~/.kube/config. - cd config/manager && $(KUSTOMIZE) edit set image controller=${IMG} + cd config/manager && $(KUSTOMIZE) edit set image ghcr.io/aenix-io/etcd-operator=${IMG} $(KUSTOMIZE) build config/default | $(KUBECTL) apply -f - .PHONY: undeploy diff --git a/config/manager/kustomization.yaml b/config/manager/kustomization.yaml index ad13e96b..8335489f 100644 --- a/config/manager/kustomization.yaml +++ b/config/manager/kustomization.yaml @@ -2,7 +2,4 @@ resources: - manager.yaml apiVersion: kustomize.config.k8s.io/v1beta1 kind: Kustomization -images: -- name: controller - newName: controller - newTag: latest +images: [] diff --git a/config/manager/manager.yaml b/config/manager/manager.yaml index 6aaf0c70..b62c4319 100644 --- a/config/manager/manager.yaml +++ b/config/manager/manager.yaml @@ -70,7 +70,7 @@ spec: - /manager args: - --leader-elect - image: ghcr.io/aenix-io/etcd-operator:latest + image: ghcr.io/aenix-io/etcd-operator:v0.0.2 imagePullPolicy: IfNotPresent name: manager securityContext: diff --git a/site/content/en/docs/v0.1/quickstart.md b/site/content/en/docs/v0.1/quickstart.md new file mode 100644 index 00000000..31e7fd62 --- /dev/null +++ b/site/content/en/docs/v0.1/quickstart.md @@ -0,0 +1,33 @@ +--- +title: Quickstart +weight: 0 +description: Get etcd with etcd-operator up and running in less than 5 minutes! +--- + +Follow these instructions to install, run, and test etcd with etcd-operator in a Kubernetes cluster. + +Pre-requisites: +- [kubectl](https://kubernetes.io/docs/tasks/tools/install-kubectl/) +- [kustomize](https://github.com/kubernetes-sigs/kustomize) +- Kubernetes cluster and `kubectl` configured to use it + - If you don't have a Kubernetes cluster, you can use [kind](https://kind.sigs.k8s.io/docs/user/quick-start/) to create a local one +- [cert-manager](https://cert-manager.io/docs/installation/) installed in the cluster + +1. Install etcd-operator: + ```bash + kustomize build 'https://github.com/aenix-io/etcd-operator//config/default?ref=main' | kubectl apply -f - + ``` +2. Check the operator is running: + ```bash + kubectl get pods -n etcd-operator-system -l control-plane=controller-manager + ``` +3. Create an etcd cluster: + ```bash + kubectl apply -f https://github.com/aenix-io/etcd-operator/raw/main/config/samples/etcd.aenix.io_v1alpha1_etcdcluster.yaml + ``` + **Caution**: by default emptyDir storage is used. It means such cluster configuration is not intended for long-term storage. + +4. Check the etcd cluster is running: + ```bash + kubectl get pods -l app.kubernetes.io/managed-by=etcd-operator + ``` diff --git a/site/docker-compose.yaml b/site/docker-compose.yaml index 9069dc06..72359166 100644 --- a/site/docker-compose.yaml +++ b/site/docker-compose.yaml @@ -4,6 +4,7 @@ services: site: image: docsy/docsy-example + platform: linux/amd64 build: context: . command: server