> ## Documentation Index
> Fetch the complete documentation index at: https://developers.chatwoot.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Upgrading your Chatwoot installation

> Step-by-step guide to upgrade Chatwoot across different deployment methods

## Linux VM

Whenever a new version of Chatwoot is released, use the following steps to upgrade your instance.

<Note>
  To install `cwctl`, refer [this](#install-or-upgrade-chatwoot-cli) section below.
</Note>

<Note>
  If you are on an older version of Chatwoot(\< 2.7), follow the [manual upgrade steps](/self-hosted/deployment/linux-vm#upgrading-to-a-newer-version-of-chatwoot) if you face errors with `cwctl`.
</Note>

```bash theme={null}
cwctl --upgrade
```

This upgrade method is applicable for all manual linux installations including installation using aws marketplace.

## Docker

Update the images using the latest image from chatwoot.

```bash theme={null}
docker-compose down
docker-compose pull
docker-compose up -d
```

Run the `rails db:chatwoot_prepare` option after accessing the console from one of the containers running the latest image.

```bash theme={null}
docker exec -it $(basename $(pwd))-rails-1 sh -c 'RAILS_ENV=production bundle exec rails db:chatwoot_prepare'
```

## Helm(Kubernetes)

This upgrade guide is applicable for Chatwoot DigitalOcean 1-click k8s app and any other Kubernetes deployment using `charts`.

Do `helm repo update` and check the version of charts that is going to be installed. Helm charts follows semantic versioning and so if the MAJOR version is different from your installed version, there might be breaking changes. Please refer to the changelog before upgrading.

```bash theme={null}
# update helm repositories
helm repo update
# list your current installed version
helm list
# show the latest version of charts that is going to be installed
helm search repo chatwoot
```

```bash theme={null}
#if it is major version update, refer to the changelog before proceeding
helm upgrade chatwoot chatwoot/chatwoot -f <your-custom-values>.yaml
```

## Heroku

1. Pull the latest changes from Chatwoot github repo to your fork. Use the fetch upstream changes feature on Github.
2. Deploy the latest branch to your heroku app.
