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

# Version Upgrade

This document describes how to upgrade your self-hosted Teable deployment.

## Update Frequency

Teable releases updates on an irregular schedule, often at a high frequency. We may ship multiple updates in a week, so the release frequency could be very high. You have full control over when to update your self-hosted Teable instance. You can choose to upgrade weekly or monthly. Whenever a new version is released, you can flexibly decide whether to upgrade. You can view all available versions on [GitHub Packages](https://github.com/teableio/teable-enterprise/pkgs/container/teable-ee).

<Note>
  Before performing any upgrade, we strongly recommend backing up your data first.
</Note>

## Docker Compose Upgrade

If you deployed Teable using Docker Compose, follow these steps to upgrade:

### Backup Data (Recommended)

We recommend backing up your entire cloud server, or backing up the PostgreSQL / Redis / storage volumes you're using.

### Navigate to Deployment Directory

```bash theme={null}
cd teable  # Navigate to your teable deployment directory
```

### Pull Latest Images

```bash theme={null}
docker-compose pull
```

### Restart Services

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

The system will automatically recreate containers using the latest images. Your data is stored in Docker volumes and will not be lost.

### Verify Upgrade

```bash theme={null}
# Check container status
docker-compose ps

# View logs to confirm successful startup
docker-compose logs -f teable
```

Visit your Teable instance to confirm the service is running properly.

## Upgrade to Specific Version

If you want to upgrade to a specific version instead of the latest, modify the image tag in `docker-compose.yaml`:

```yaml theme={null}
services:
  teable:
    image: ghcr.io/teableio/teable-ee:0.5.0-alpha-1.x.x-build.xxx  # Specify version
```

Then execute:

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

<Tip>
  You can view all available versions on the [GitHub Releases](https://github.com/teableio/teable-enterprise/pkgs/container/teable-ee) page.
</Tip>

## Kubernetes Upgrade

If you deployed Teable using Kubernetes, follow these steps to upgrade:

### Manual Image Update

If you're using custom Kubernetes configuration, you can directly update the image version in your Deployment:

```bash theme={null}
kubectl set image deployment/teable teable=ghcr.io/teableio/teable-ee:0.5.0-alpha-1.x.x-build.xxx -n teable
```

### Verify Upgrade

```bash theme={null}
# Check Pod status
kubectl get pods -n teable

# Check rollout status
kubectl rollout status deployment/teable -n teable

# View logs
kubectl logs -f deployment/teable -n teable
```

## Database Migration

Teable automatically executes database migrations on startup, no manual intervention required. If you encounter issues after upgrading, check the logs to confirm migration was successful:

```bash theme={null}
# Docker Compose
docker-compose logs teable | grep -i migration

# Kubernetes
kubectl logs deployment/teable -n teable | grep -i migration
```

## Rollback

If you encounter issues after upgrading, you can rollback to the previous version.

### Docker Compose Rollback

1. Modify the image tag in `docker-compose.yaml` to the previous version
2. Execute `docker-compose up -d`

### Kubernetes Rollback

```bash theme={null}
# View rollout history
kubectl rollout history deployment/teable -n teable

# Rollback to previous version
kubectl rollout undo deployment/teable -n teable

# Rollback to specific revision
kubectl rollout undo deployment/teable -n teable --to-revision=<revision>
```

## FAQ

<Accordion title="Will I lose data after upgrading?">
  No. Your data is stored in Docker volumes or external databases, and upgrading containers will not affect your data. However, we still recommend backing up before upgrading.
</Accordion>

<Accordion title="Will my Instance ID change after upgrading?">
  No. Your Instance ID remains unchanged during application updates. It is a permanent identifier for your self-hosted installation.
</Accordion>

<Accordion title="How long does the upgrade take?">
  Typically, pulling new images takes a few minutes (depending on network speed), and container restart only takes a few seconds. The entire process usually completes within 5-10 minutes.
</Accordion>

<Accordion title="Will there be service interruption during upgrade?">
  Using `docker-compose up -d` or Kubernetes rolling update, there will be a brief service interruption (usually a few seconds to tens of seconds). For zero-downtime upgrades, we recommend using Kubernetes with appropriate rolling update strategies configured.
</Accordion>

<Accordion title="How do I check the current running version?">
  You can check the current version by:

  * Viewing the version number at the bottom left of the Teable interface
  * Using an admin account to access the admin panel
  * Running `docker inspect teable-teable-1 --format='{{.Config.Image}}'` to check the image version
</Accordion>

<Accordion title="What if the upgrade fails?">
  1. First check container logs to troubleshoot: `docker-compose logs teable`
  2. If it's a database migration issue, try restoring from backup
  3. If the issue persists, rollback to the previous version
  4. Contact support at [support@teable.ai](mailto:support@teable.ai)
</Accordion>
