Created by Github action --------- Co-authored-by: Crowdin Bot <support+bot@crowdin.com> Co-authored-by: github-actions <github-actions@twenty.com>
227 lines
14 KiB
Plaintext
227 lines
14 KiB
Plaintext
---
|
||
title: Устранение неполадок
|
||
image: /images/user-guide/what-is-twenty/20.png
|
||
---
|
||
|
||
<Frame>
|
||
<img src="/images/user-guide/what-is-twenty/20.png" alt="Header" />
|
||
</Frame>
|
||
|
||
## Устранение неполадок
|
||
|
||
Если вы столкнулись с какой-либо проблемой при настройке окружения для разработки, обновлении вашего экземпляра или самостоятельном хостинге,
|
||
вот некоторые решения общих проблем.
|
||
|
||
### Самостоятельный хостинг
|
||
|
||
#### Первая установка завершается с ошибкой `password authentication failed for user "postgres"`
|
||
|
||
🚨 **ВАЖНО: Это решение ТОЛЬКО для новых установок** 🚨
|
||
Если у вас уже есть экземпляр Twenty с производственными данными, **НЕ** следуйте этим шагам, так как они безвозвратно удалят вашу базу данных!
|
||
|
||
Во время первой установки Twenty вы можете изменить пароль по умолчанию для базы данных.
|
||
Пароль, который вы установили во время первой установки, навсегда сохраняется в объеме базы данных. Если вы позже попытаетесь изменить этот пароль в вашей конфигурации без удаления старого объема, возникнут ошибки аутентификации, так как база данных по-прежнему использует исходный пароль.
|
||
|
||
⚠️ ПРЕДУПРЕЖДЕНИЕ: Следующие шаги ПОЛНОСТЬЮ УДАЛЯТ все данные базы данных! ⚠️
|
||
Продолжайте, только если это новая установка без важной информации.
|
||
|
||
Чтобы обновить `PG_DATABASE_PASSWORD`, вам нужно:
|
||
|
||
```sh
|
||
# Update the PG_DATABASE_PASSWORD in .env
|
||
docker compose down --volumes
|
||
docker compose up -d
|
||
```
|
||
|
||
#### CR разрывы строк обнаружены [Windows]
|
||
|
||
Это связано с разрывами строк Windows и конфигурацией git. Попробуйте выполнить:
|
||
|
||
```
|
||
git config --global core.autocrlf false
|
||
```
|
||
|
||
Затем удалите репозиторий и клонируйте его заново.
|
||
|
||
#### Отсутствует схема метаданных
|
||
|
||
Во время установки Twenty, вам нужно настроить базу данных postgres с правильными схемами, расширениями и пользователями.
|
||
Если вы успешно выполнили эту настройку, в вашей базе данных должны быть схемы `default` и `metadata`.
|
||
Если их нет, убедитесь, что у вас на компьютере не запущено более одного экземпляра postgres.
|
||
|
||
#### Невозможно найти модуль 'twenty-emails' или его соответствующие определения типа.
|
||
|
||
Вам нужно собрать пакет `twenty-emails` перед запуском инициализации базы данных с помощью `npx nx run twenty-emails:build`.
|
||
|
||
#### Отсутствует пакет twenty-x
|
||
|
||
Убедитесь, что вы запустили yarn в корневой директории, а затем выполните команду `npx nx server:dev twenty-server`. Если это по-прежнему не работает, попробуйте собрать отсутствующий пакет вручную.
|
||
|
||
#### Lint on Save не работает
|
||
|
||
Это должно работать из коробки с установленным расширением eslint. Если это не работает, попробуйте добавить это в настройки vscode (на уровне контейнера разработчика):
|
||
|
||
```
|
||
"editor.codeActionsOnSave": {
|
||
|
||
"source.fixAll.eslint": "explicit"
|
||
|
||
}
|
||
```
|
||
|
||
#### При запуске `npx nx start` или `npx nx start twenty-front` возникает ошибка нехватки памяти
|
||
|
||
В `packages/twenty-front/.env` раскомментируйте `VITE_DISABLE_TYPESCRIPT_CHECKER=true` и `VITE_DISABLE_ESLINT_CHECKER=true`, чтобы отключить фоновые проверки, таким образом уменьшая количество необходимой оперативной памяти.
|
||
|
||
**Если это не работает:**
|
||
Запускайте только те сервисы, которые вам нужны, вместо `npx nx start`. Например, если вы работаете на сервере, запускайте только `npx nx worker twenty-server`
|
||
|
||
**Если это не работает:**
|
||
Если вы пытались запустить только `npx nx run twenty-server:start` на WSL и это завершилось с ошибкой памяти:
|
||
|
||
`FATAL ERROR: Ineffective mark-compacts near heap limit Allocation failed - JavaScript heap out of memory`
|
||
|
||
Решение проблемы - выполнить нижеуказанную команду в терминале или добавить её в профиль .bashrc, чтобы настроить автоматически:
|
||
|
||
`export NODE_OPTIONS="--max-old-space-size=8192"`
|
||
|
||
Флаг --max-old-space-size=8192 устанавливает верхний предел 8 ГБ для heap Node.js; использование этого значения зависит от потребностей приложения.
|
||
Источник: https://stackoverflow.com/questions/56982005/where-do-i-set-node-options-max-old-space-size-2048
|
||
|
||
**Если это не работает:**
|
||
Исследуйте, какие процессы занимают большую часть оперативной памяти вашей машины. В Twenty мы заметили, что некоторые расширения VScode потребляют много оперативной памяти, поэтому мы временно их отключаем.
|
||
|
||
**Если это не работает:**
|
||
Перезагрузка вашей машины помогает очистить некорректные процессы.
|
||
|
||
#### При запуске `npx nx start` в логах появляются странные [0] и [1]
|
||
|
||
Это ожидаемо, так как команда `npx nx start` запускает несколько команд под капотом
|
||
|
||
#### Электронные письма не отправляются
|
||
|
||
В большинстве случаев это происходит из-за того, что `воркер` не работает в фоновом режиме. Попробуйте запустить
|
||
|
||
```
|
||
npx nx worker twenty-server
|
||
```
|
||
|
||
#### Не удается подключить свой аккаунт Microsoft 365
|
||
|
||
В большинстве случаев это происходит из-за того, что ваш администратор не включил лицензию Microsoft 365 для вашего аккаунта. Проверьте [https://admin.microsoft.com/](https://admin.microsoft.com/Adminportal/Home).
|
||
|
||
Если вы получили код ошибки `AADSTS50020`, это, вероятно, означает, что вы используете личную учетную запись Microsoft. Это пока не поддерживается. Подробнее [здесь](https://learn.microsoft.com/fr-fr/troubleshoot/entra/entra-id/app-integration/error-code-aadsts50020-user-account-identity-provider-does-not-exist).
|
||
|
||
#### При запуске `yarn` появляются предупреждения в консоли
|
||
|
||
Предупреждения информируют о добавлении дополнительных зависимостей, которые не указаны явно в `package.json`, поэтому, пока не появляются критичные ошибки, всё должно работать как ожидается.
|
||
|
||
#### Когда пользователь получает доступ к странице входа, в логах появляется ошибка о несанкционированном доступе пользователя к рабочему пространству.
|
||
|
||
Это ожидаемо, так как пользователь не авторизован при выходе из системы, поскольку его личность не проверена.
|
||
|
||
#### Как проверить, работает ли ваш воркер?
|
||
|
||
- Перейдите на [webhook-test.com](https://webhook-test.com/) и скопируйте **Ваш уникальный URL вебхука**.
|
||
|
||
<div style={{textAlign: 'center'}}>
|
||
<img src="/images/docs/developers/self-hosting/webhook-test.jpg" alt="Webhook test" />
|
||
</div>
|
||
- Откройте приложение Twenty, перейдите в `/settings` и включите переключатель **Advanced** внизу слева на экране.
|
||
- Создайте новый вебхук.
|
||
- Вставьте **Ваш уникальный URL вебхука** в поле **Endpoint Url** в Twenty. Установите **Фильтры** на `Компании` и `Создано`.
|
||
<div style={{textAlign: 'center'}}>
|
||
<img src="/images/docs/developers/self-hosting/webhook-settings.jpg" alt="Webhook settings" />
|
||
</div>
|
||
- Перейдите в `/objects/companies` и создайте новую запись компании.
|
||
- Return to [webhook-test.com](https://webhook-test.com/) and check if a new **POST request** has been received.
|
||
<div style={{textAlign: 'center'}}>
|
||
<img src="/images/docs/developers/self-hosting/webhook-test-result.jpg" alt="Webhook test result" />
|
||
</div>
|
||
- Если **POST запрос** получен, ваш воркер успешно работает. В противном случае, вам нужно устранить неполадки вашего воркера.
|
||
|
||
#### Фронтэнд не запускается и выдает ошибку TS5042: Опция 'project' не может быть использована вместе с исходными файлами на командной строке
|
||
|
||
Закомментируйте плагин checker в `packages/twenty-ui/vite-config.ts`, как показано в примере ниже
|
||
|
||
```
|
||
plugins: [
|
||
react({ jsxImportSource: '@emotion/react' }),
|
||
tsconfigPaths(),
|
||
svgr(),
|
||
dts(dtsConfig),
|
||
// checker(checkersConfig),
|
||
wyw({
|
||
include: [
|
||
'**/OverflowingTextWithTooltip.tsx',
|
||
'**/Chip.tsx',
|
||
'**/Tag.tsx',
|
||
'**/Avatar.tsx',
|
||
'**/AvatarChip.tsx',
|
||
],
|
||
babelOptions: {
|
||
presets: ['@babel/preset-typescript', '@babel/preset-react'],
|
||
},
|
||
}),
|
||
],
|
||
```
|
||
|
||
#### Административная панель недоступна
|
||
|
||
Выполните `UPDATE core."user" SET "canAccessFullAdminPanel" = TRUE WHERE email = 'you@yourdomain.com';` в контейнере базы данных, чтобы получить доступ к административной панели.
|
||
|
||
### 1-click Docker compose
|
||
|
||
#### Не удается войти в систему
|
||
|
||
Если не удается войти в систему после настройки:
|
||
|
||
1. Выполните следующие команды:
|
||
```bash
|
||
docker exec -it twenty-server-1 yarn
|
||
docker exec -it twenty-server-1 npx nx database:reset --configuration=no-seed
|
||
```
|
||
2. Перезапустите контейнеры Docker:
|
||
```bash
|
||
docker compose down
|
||
docker compose up -d
|
||
```
|
||
|
||
Учтите, что команда database:reset полностью удалит вашу базу данных и создаст её заново.
|
||
|
||
#### Проблемы подключения за обратным прокси
|
||
|
||
Если вы запускаете Twenty за обратным прокси и испытываете проблемы с подключением:
|
||
|
||
1. **Проверьте SERVER_URL:**
|
||
|
||
Убедитесь, что `SERVER_URL` в вашем файле `.env` соответствует вашему внешнему URL-адресу, включая `https`, если SSL включён.
|
||
|
||
2. **Проверьте настройки обратного прокси:**
|
||
|
||
- Убедитесь, что ваш обратный прокси правильно перенаправляет запросы на сервер Twenty.
|
||
- Убедитесь, что заголовки, как `X-Forwarded-For` и `X-Forwarded-Proto`, корректно установлены.
|
||
|
||
3. **Перезапустите службы:**
|
||
|
||
После внесения изменений перезапустите как обратный прокси, так и контейнеры Twenty.
|
||
|
||
#### Ошибка при загрузке изображения - доступ запрещён
|
||
|
||
Проблема решается сменой владельца папки данных на хосте с root на другого пользователя и группу.
|
||
|
||
## Получение помощи
|
||
|
||
Если вы столкнулись с проблемами, не охваченными в этом руководстве:
|
||
|
||
- Проверьте логи:
|
||
|
||
Просмотрите логи контейнера на наличие сообщений об ошибках:
|
||
|
||
```bash
|
||
docker compose logs
|
||
```
|
||
|
||
- Поддержка сообщества:
|
||
|
||
Обратитесь к [сообществу Twenty](https://github.com/twentyhq/twenty/issues) или [каналам поддержки](https://discord.gg/cx5n4Jzs57) за помощью. |