---
title: Руководство по обновлению
---

## Общие рекомендации

**Всегда убедитесь, что сделали резервную копию вашей базы данных перед началом процесса обновления**, запустив `docker exec -it {db_container_name_or_id} pg_dumpall -U {postgres_user} > databases_backup.sql`.

Чтобы восстановить резервную копию, выполните команду `cat databases_backup.sql | docker exec -i {db_container_name_or_id} psql -U {postgres_user}`.

Если вы использовали Docker Compose, выполните следующие шаги:

1. В терминале на хосте, где работает Twenty, отключите Twenty: `docker compose down`.

2. Обновите версию, изменив значение `TAG` в файле .env рядом с вашим docker-compose. ( Мы рекомендуем использовать версии `major.minor`, такие как `v0.53`. )

3. Верните Twenty в сеть с `docker compose up -d`.

Если вы хотите обновить свою инстанцию на несколько версий, например с v0.33.0 до v0.35.0, вам потребуется сделать это поэтапно, сначала с v0.33.0 до v0.34.0, затем с v0.34.0 до v0.35.0.

**Убедитесь, что после каждой обновленной версии у вас есть не поврежденная резервная копия.**

## Специфические для версии шаги обновления

## v1.0

Привет, Twenty v1.0! 🎉

## v0.60

### Улучшение производительности

Все взаимодействия с метаданными API оптимизированы для повышения производительности, особенно для манипуляции метаданными объектов и операций создания рабочих пространств.

Мы обновили стратегию кэширования, чтобы приоритетом были попадания кэша перед запросами к базе данных, что значительно улучшило производительность операций с метаданными API.

Если после обновления у вас возникнут проблемы с запуском, возможно, потребуется очистить ваш кэш, чтобы синхронизировать его с последними изменениями. Запустите эту команду в вашем контейнере twenty-server:

```bash
yarn command:prod cache:flush
```

### v0.55

Обновите вашу инстанцию Twenty для использования изображения v0.55

Вам больше не нужно запускать никакие команды, новое изображение автоматически выполнит все необходимые миграции.

### Ошибка `User does not have permission`

Если после обновления вы столкнетесь с ошибками авторизации в большинстве запросов, возможно, потребуется очистить кэш для пересчета последних прав доступа.

В вашем контейнере `twenty-server`, запустите:

```bash
yarn command:prod cache:flush
```

Эта проблема специфична для данной версии Twenty и не должна требоваться для будущих обновлений.

### v0.54

Начиная с версии `0.53`, ручные действия не требуются.

#### Отказ от схемы метаданных

Мы объединили схему `metadata` в `core`, чтобы упростить извлечение данных из `TypeORM`.
Мы объединили этап команды `migrate` в команду `upgrade`. Мы не рекомендуем запускать `migrate` вручную в ваших контейнерах серверов/рабочих.

### Начиная с v0.53

Начиная с `0.53`, обновление программно выполняется внутри `DockerFile`, это означает, что отныне вам больше не нужно запускать команды вручную.

Убедитесь, что вы обновляете свою инстанцию последовательно, без пропуска основной версии (например, `0.43.3` на `0.44.0` допускается, но `0.43.1` на `0.45.0` нет), иначе это может привести к десинхронизации версии рабочего пространства, что может вызвать ошибку во время выполнения и отсутствовать функциональность.

Чтобы проверить, правильно ли было мигрировано рабочее пространство, вы можете просмотреть его версию в базе данных в таблице `core.workspace`.

Она всегда должна находиться в диапазоне текущей версии вашего инстанции Twenty `major.minor`, вы можете просмотреть версию инстанции в админ-панели (на `/settings/admin-panel`, доступна, если свойство `canAccessFullAdminPanel` вашего пользователя установлено на true в базе данных) или запустив `echo $APP_VERSION` в вашем контейнере `twenty-server`.

Чтобы исправить десинхронизированную версию рабочего пространства, вам потребуется обновить его с соответствующей версии Twenty, следуя последовательному руководству по обновлению и так далее, пока он не достигнет желаемой версии.

#### Удаление `auditLog`

Мы удалили стандартный объект auditLog, что означает, что размер вашей резервной копии может значительно уменьшиться после этой миграции.

### v0.51 до v0.52

Обновите вашу инстанцию Twenty для использования изображения v0.52

```
yarn database:migrate:prod
yarn command:prod upgrade
```

#### У меня рабочее пространство заблокировано на версии между `0.52.0` и `0.52.6`.

К сожалению, `0.52.0` и `0.52.6` были полностью удалены из dockerHub.
Вам потребуется вручную обновить версию рабочего пространства до `0.51.0` в базе данных и обновить с использованием версии twenty `0.52.11`, следуя её руководству по обновлению.

### v0.50 до v0.51

Обновите вашу инстанцию Twenty для использования изображения v0.51

```
yarn database:migrate:prod
yarn command:prod upgrade
```

### v0.44.0 до v0.50.0

Обновите вашу инстанцию Twenty для использования изображения v0.50.0

```
yarn database:migrate:prod
yarn command:prod upgrade
```

#### Модификация в docker-compose.yml

Эта версия включает модификацию `docker-compose.yml`, чтобы предоставить сервису `worker` доступ к тому `server-local-data`.
Обновите ваш локальный `docker-compose.yml` с [v0.50.0 docker-compose.yml](https://github.com/twentyhq/twenty/blob/v0.50.0/packages/twenty-docker/docker-compose.yml)

### v0.43.0 до v0.44.0

Обновите вашу инстанцию Twenty для использования изображения v0.44.0

```
yarn database:migrate:prod
yarn command:prod upgrade
```

### v0.42.0 до v0.43.0

Обновите вашу инстанцию Twenty для использования изображения v0.43.0

```
yarn database:migrate:prod
yarn command:prod upgrade
```

В этой версии мы также переключились на изображение postgres:16 в docker-compose.yml.

#### (Вариант 1) Миграция базы данных

Сохранение существующего изображения postgres-spilo приемлемо, но вам потребуется зафиксировать версию в вашем docker-compose.yml на 0.43.0.

#### (Вариант 2) Миграция базы данных

Если вы хотите мигрировать вашу базу данных на новое изображение postgres:16, следуйте этим шагам:

1. Сделайте дамп вашей базы данных из старого контейнера postgres-spilo

```
docker exec -it twenty-db-1 sh
pg_dump -U {YOUR_POSTGRES_USER} -d {YOUR_POSTGRES_DB} > databases_backup.sql
exit
docker cp twenty-db-1:/home/postgres/databases_backup.sql .
```

Убедитесь, что ваш файл дампа не пустой.

2. Обновите ваш файл docker-compose.yml с использованием изображения postgres:16, как в файле [docker-compose.yml](https://raw.githubusercontent.com/twentyhq/twenty/main/packages/twenty-docker/docker-compose.yml).

3. Восстановите базу данных в новый контейнер postgres:16.

```
docker cp databases_backup.sql twenty-db-1:/databases_backup.sql
docker exec -it twenty-db-1 sh
psql -U {YOUR_POSTGRES_USER} -d {YOUR_POSTGRES_DB} -f databases_backup.sql
exit
```

### v0.41.0 до v0.42.0

Обновите вашу инстанцию Twenty для использования изображения v0.42.0

```
yarn database:migrate:prod
yarn command:prod upgrade-0.42
```

**Переменные окружения**

* Удалено: `FRONT_PORT`, `FRONT_PROTOCOL`, `FRONT_DOMAIN`, `PORT`
* Добавлено: `FRONTEND_URL`, `NODE_PORT`, `MAX_NUMBER_OF_WORKSPACES_DELETED_PER_EXECUTION`, `MESSAGING_PROVIDER_MICROSOFT_ENABLED`, `CALENDAR_PROVIDER_MICROSOFT_ENABLED`, `IS_MICROSOFT_SYNC_ENABLED`

### v0.40.0 до v0.41.0

Обновите вашу инстанцию Twenty для использования изображения v0.41.0

```
yarn database:migrate:prod
yarn command:prod upgrade-0.41
```

**Переменные окружения**

* Удалено: `AUTH_MICROSOFT_TENANT_ID`

### v0.35.0 до v0.40.0

Обновите вашу инстанцию Twenty для использования изображения v0.40.0

```
yarn database:migrate:prod
yarn command:prod upgrade-0.40
```

**Переменные окружения**

* Добавлено: `IS_EMAIL_VERIFICATION_REQUIRED`, `EMAIL_VERIFICATION_TOKEN_EXPIRES_IN`, `WORKFLOW_EXEC_THROTTLE_LIMIT`, `WORKFLOW_EXEC_THROTTLE_TTL`

### v0.34.0 до v0.35.0

Обновите вашу инстанцию Twenty для использования изображения v0.35.0

```
yarn database:migrate:prod
yarn command:prod upgrade-0.35
```

Команда `yarn database:migrate:prod` применяет миграции к структуре базы данных (схемы core и metadata)
Команда `yarn command:prod upgrade-0.35` заботится о миграции данных всех рабочих пространств.

**Переменные окружения**

* Мы заменили `ENABLE_DB_MIGRATIONS` на `DISABLE_DB_MIGRATIONS` (значение по умолчанию теперь `false`, вероятно, вам не потребуется ничего устанавливать)

### v0.33.0 до v0.34.0

Обновите вашу инстанцию Twenty для использования изображения v0.34.0

```
yarn database:migrate:prod
yarn command:prod upgrade-0.34
```

Команда `yarn database:migrate:prod` применяет миграции к структуре базы данных (схемы core и metadata)
Команда `yarn command:prod upgrade-0.34` заботится о миграции данных всех рабочих пространств.

**Переменные окружения**

* Удалено: `FRONT_BASE_URL`
* Добавлено: `FRONT_DOMAIN`, `FRONT_PROTOCOL`, `FRONT_PORT`

Мы обновили способ обработки URL frontend.
Теперь вы можете установить URL frontend, используя переменные `FRONT_DOMAIN`, `FRONT_PROTOCOL` и `FRONT_PORT`.
Если FRONT_DOMAIN не установлен, URL frontend будет зависеть от `SERVER_URL`.

### v0.32.0 до v0.33.0

Обновите вашу инстанцию Twenty для использования изображения v0.33.0

```
yarn command:prod cache:flush
yarn database:migrate:prod
yarn command:prod upgrade-0.33
```

Команда `yarn command:prod cache:flush` очистит кэш Redis.
Команда `yarn database:migrate:prod` применяет миграции к структуре базы данных (схемы core и metadata)
Команда `yarn command:prod upgrade-0.33` заботится о миграции данных всех рабочих пространств.

Начиная с этой версии, образ twenty-postgres для DB становится устаревшим, и вместо него используется twenty-postgres-spilo.
Если вы хотите продолжать использовать изображение twenty-postgres, просто замените `twentycrm/twenty-postgres:${TAG}` на `twentycrm/twenty-postgres` в файле docker-compose.yml.

### v0.31.0 до v0.32.0

Обновите вашу инстанцию Twenty для использования изображения v0.32.0

**Миграция схемы и данных**

```
yarn database:migrate:prod
yarn command:prod upgrade-0.32
```

Команда `yarn database:migrate:prod` применяет миграции к структуре базы данных (схемы core и metadata)
Команда `yarn command:prod upgrade-0.32` заботится о миграции данных всех рабочих пространств.

**Переменные окружения**

Мы обновили способ обработки соединения с Redis.

* Удалено: `REDIS_HOST`, `REDIS_PORT`, `REDIS_USERNAME`, `REDIS_PASSWORD`
* Добавлено: `REDIS_URL`

Обновите ваш файл `.env` для использования новой переменной `REDIS_URL` вместо индивидуальных параметров подключения Redis.

Мы также упростили способ обработки JWT токенов.

* Удалено: `ACCESS_TOKEN_SECRET`, `LOGIN_TOKEN_SECRET`, `REFRESH_TOKEN_SECRET`, `FILE_TOKEN_SECRET`
* Добавлено: `APP_SECRET`

Обновите ваш файл `.env` для использования новой переменной `APP_SECRET` вместо индивидуальных секрета токенов (вы можете использовать прежний секрет или сгенерировать новую случайную строку).

**Подключенный Аккаунт**

Если вы используете подключенный аккаунт для синхронизации ваших электронных писем и календарей Google, вам потребуется активировать [API людей](https://developers.google.com/people) на вашей консоли администратора Google.

### v0.30.0 до v0.31.0

Обновите вашу инстанцию Twenty для использования изображения v0.31.0

**Миграция схемы и данных:**

```
yarn database:migrate:prod
yarn command:prod upgrade-0.31
```

Команда `yarn database:migrate:prod` применяет миграции к структуре базы данных (схемы core и metadata)
Команда `yarn command:prod upgrade-0.31` заботится о миграции данных всех рабочих пространств.

### v0.24.0 до v0.30.0

Обновите вашу инстанцию Twenty для использования изображения v0.30.0

**Критически важное изменение**:
Чтобы повысить производительность, Twenty теперь требует настроить кэш Redis. Мы обновили [docker-compose.yml](https://raw.githubusercontent.com/twentyhq/twenty/main/packages/twenty-docker/docker-compose.yml) для этого.
Убедитесь, что вы обновили свою конфигурацию и обновили переменные окружения соответственно:

```
REDIS_HOST={your-redis-host}
REDIS_PORT={your-redis-port}
CACHE_STORAGE_TYPE=redis
```

**Миграция схемы и данных:**

```
yarn database:migrate:prod
yarn command:prod upgrade-0.30
```

Команда `yarn database:migrate:prod` применяет миграции к структуре базы данных (схемы core и metadata)
Команда `yarn command:prod upgrade-0.30` заботится о миграции данных всех рабочих пространств.

### v0.23.0 до v0.24.0

Обновите вашу инстанцию Twenty для использования изображения v0.24.0

Выполните следующие команды:

```
yarn database:migrate:prod
yarn command:prod upgrade-0.24
```

Команда `yarn database:migrate:prod` применяет миграции к структуре базы данных (схемы core и metadata)
Команда `yarn command:prod upgrade-0.24` заботится о миграции данных всех рабочих пространств.

### v0.22.0 до v0.23.0

Обновите вашу инстанцию Twenty для использования изображения v0.23.0

Выполните следующие команды:

```
yarn database:migrate:prod
yarn command:prod upgrade-0.23
```

Команда `yarn database:migrate:prod` применяет миграции к Базе данных.
Команда `yarn command:prod upgrade-0.23` заботится о миграции данных, включая перенос активностей в задачи/заметки.

### v0.21.0 до v0.22.0

Обновите вашу инстанцию Twenty для использования изображения v0.22.0

Выполните следующие команды:

```
yarn database:migrate:prod
yarn command:prod workspace:sync-metadata -f
yarn command:prod upgrade-0.22
```

Команда `yarn database:migrate:prod` применяет миграции к Базе данных.
Команда `yarn command:prod workspace:sync-metadata -f` синхронизирует определение стандартных объектов с таблицами метаданных и применит необходимые миграции к существующим рабочим пространствам.
Команда `yarn command:prod upgrade-0.22` выполнит преобразование данных для адаптации к новым параметрам по умолчанию объекта defaultRequestInstrumentationOptions.
