# Updating draften

A new version of draften is deployed on your own server with two commands from
the installation's directory:

```
git pull
docker compose up -d --build
```

At start the worker runs the **database migrations** by itself. Schema changes
are written so that they can run more than once and the database still serves
the previous version of the interface — a short overlap of the old and new
container does no harm. Migrations run under a database lock, so several
containers may start at once.

## Before updating

- Make a **database dump** — see [Backup and restore](/en/admin/backup-and-restore).
- Read the release notes in the repository, if there are any.

## After updating

- `docker compose ps` — both main services (`worker`, `web`) run and `db` is
  healthy.
- `docker compose logs --tail 50 worker` — the migrations went through without
  an error.
- On the **Operations** page the workers check in and the verdict is
  "capacity is enough".

## What does not change by itself

- **Assistants' settings, instructions and sources** are in the database, and
  an update does not touch them.
- **An Entra registration's client secret** expires by how long you issued it
  for; renew it in the interface (Organisation → Integrations → New secret),
  not by updating.
