---
title: Custom Installation
---
import Tabs from "@theme/Tabs";
import TabItem from "@theme/TabItem";
## Install KubeVela with cert-manager
By default, KubeVela will use a self-signed certificate provided by [kube-webhook-certgen](https://github.com/jet/kube-webhook-certgen) for admissionWebhooks.
You can also use cert-manager if it's available. Note that you need to install cert-manager **before** the KubeVela chart.
```shell script
helm repo add jetstack https://charts.jetstack.io
helm repo update
helm install cert-manager jetstack/cert-manager --namespace cert-manager --version v1.2.0 --create-namespace --set installCRDs=true
```
Install kubevela with enabled certmanager:
```shell script
vela install --set admissionWebhooks.certManager.enabled=true
```
## Install Pre-release
```
# List all releases
vela version list -a
# Install the specified version.
vela install --version 1.2.0-beta.3
```
## Upgrade
### 1. Upgrade CLI
** MacOS/Linux **
```shell script
curl -fsSl https://kubevela.io/script/install.sh | bash -s 1.2.3
```
**Windows**
> Only the official release version is supported.
```shell script
powershell -Command "iwr -useb https://kubevela.io/script/install.ps1 | iex"
```
**macOS/Linux**
Update your brew first. Please note that the brew method only supports the installation of the official release version.
```shell script
brew update
```
Then install KubeVela CLI
```shell script
brew install kubevela
```
- Download the latest `vela` binary file via [release log](https://github.com/oam-dev/kubevela/releases).
- Unzip the binary file, and configure the environment variables in `$PATH`, and you're done.
```shell script
sudo mv ./vela /usr/local/bin/vela
```
> [Installation Tips](https://github.com/oam-dev/kubevela/issues/625):
> If you are using a Mac system, it will pop up a warning that "vela" cannot be opened because the package from the developer cannot be verified.
>
> MacOS imposes stricter restrictions on the software that can run in the system. You can temporarily solve this problem by opening `System Preference ->Security & Privacy -> General` and clicking on `Allow Anyway`.
### 2. Upgrade Vela Core
If current version >=1.2.0
```shell
vela install --version v1.2.3
```
If current version < 1.2.0:
```shell
vela install --version v1.2.3 -r
```
### 3. Upgrade VelaUX
```shell
vela addon enable velaux version=v1.2.3
```
> If you set custom parameters during installation, be sure to include the corresponding parameters.
## Install Kubectl Vela Plugin
Install vela kubectl plugin can help you to ship applications more easily!
1. [Install and set up](https://krew.sigs.k8s.io/docs/user-guide/setup/install/) Krew on your machine.
2. Discover plugins available on Krew:
```shell
kubectl krew update
```
3. install kubectl vela:
```shell script
kubectl krew install vela
```
**macOS/Linux**
```shell script
curl -fsSl https://kubevela.io/script/install-kubectl-vela.sh | bash
```
You can also download the binary from [release pages ( >= v1.0.3)](https://github.com/oam-dev/kubevela/releases) manually.
Kubectl will discover it from your system path automatically.
For more usage please reference [kubectl plugin](../kubectlplugin).