Some checks failed
App Prod-Parity E2E Dispatch / dispatch (push) Failing after 10s
CD Storybook UI / build (push) Failing after 3m25s
CD Storybook UI / dispatch (push) Has been skipped
CD deploy main / website-changed-files (push) Successful in 18m8s
CI Agent Skills / changed-files-check (push) Successful in 18m9s
CI Create App E2E minimal / changed-files-check (push) Successful in 24s
CI Create App / changed-files-check (push) Successful in 26s
CI Docs / changed-files-check (push) Successful in 26s
CI Emails / changed-files-check (push) Successful in 28s
CI Example App Hello World / changed-files-check (push) Successful in 23s
CI Front / changed-files-check (push) Has been skipped
CI Example App Postcard / changed-files-check (push) Successful in 27s
CI UI / changed-files-check (push) Has been skipped
CI Utils Test / changed-files-check (push) Successful in 45s
CI Twenty Apps / discover (push) Successful in 1m3s
CD deploy main / deploy-main (push) Failing after 3s
CI Agent Skills / agent-skills-validate (push) Has been skipped
CI Create App / create-app-test (lint) (push) Has been skipped
CI Emails / emails-test (push) Has been skipped
CI Front / front-task (lingui:compile) (push) Has been skipped
CI Front / front-task (lint) (push) Has been skipped
CI Example App Postcard / example-app-postcard (push) Has been skipped
CI UI / ui-task (lint) (push) Has been skipped
CI UI / ui-task (pack-size) (push) Has been skipped
CI UI / ui-task (size) (push) Has been skipped
CI UI / ui-task (test) (push) Has been skipped
CI UI / ui-task (typecheck) (push) Has been skipped
CI Utils Test / utils-test (push) Has been skipped
CI Twenty Apps / ${{ matrix.app.name }} (push) Has been skipped
CI Emails / ci-emails-status-check (push) Successful in 2s
CI Example App Hello World / ci-example-app-hello-world-status-check (push) Successful in 2s
CI Example App Postcard / ci-example-app-postcard-status-check (push) Successful in 3s
CI UI / ui-sb-test (push) Has been skipped
CI Utils Test / ci-utils-test-status-check (push) Successful in 2s
CI Twenty Apps / ci-twenty-apps-status-check (push) Successful in 2s
CI UI / ci-ui-status-check (push) Successful in 2s
CI Desktop / desktop (push) Failing after 1m8s
Push docs to Crowdin / Push documentation to Crowdin (push) Failing after 55s
Push translations to Crowdin / Extract and upload translations (push) Failing after 5s
Push website translations to Crowdin / Extract and upload website translations (push) Failing after 5s
CI Create App / create-app-test (test) (push) Has been skipped
CI Create App / create-app-test (typecheck) (push) Has been skipped
CI Docs / docs-lint (push) Has been skipped
CI Example App Hello World / example-app-hello-world (push) Has been skipped
CI Front / front-task (lingui:extract) (push) Has been skipped
CI Front / front-task (test) (push) Has been skipped
CI Front / front-task (typecheck) (push) Has been skipped
CI UI / ui-sb-build (push) Failing after 1m32s
CI Twenty Apps / ${{ matrix.app.name }} (${{ matrix.server-source }}) (push) Has been skipped
CI Agent Skills / agent-skills-publish (push) Has been skipped
CI Create App / ci-create-app-status-check (push) Successful in 2s
CI Agent Skills / agent-skills-remote-source (push) Has been skipped
CI Create App E2E minimal / create-app-e2e-minimal (push) Has been cancelled
CI E2E Main / e2e-test (push) Has been cancelled
CI Front / front-sb-build (push) Has been cancelled
CI Front / front-build (push) Has been cancelled
CI Create App E2E minimal / ci-create-app-e2e-minimal-status-check (push) Has been cancelled
CI E2E Main / ci-e2e-main-status-check (push) Has been cancelled
CI E2E Main / notify-main-ci-failure (push) Has been cancelled
CI E2E Main / qa-scout-comment (push) Has been cancelled
CI Front / front-sb-test (push) Has been cancelled
CI Front / front-sb-screenshots (push) Has been cancelled
CI Front / ci-front-status-check (push) Has been cancelled
DPA Sub-Processor Sync / sync-subprocessors (push) Failing after 3s
AI Catalog Sync / sync-catalog (push) Failing after 2s
256 lines
10 KiB
Plaintext
256 lines
10 KiB
Plaintext
---
|
|
title: Řešení potíží
|
|
icon: wrench
|
|
---
|
|
|
|
## Řešení potíží
|
|
|
|
Pokud narazíte na jakýkoli problém při nastavování prostředí pro vývoj, při aktualizaci své instance nebo při samostatném hostování,
|
|
zde jsou některá řešení běžných problémů.
|
|
|
|
### Vlastní hosting
|
|
|
|
#### První instalace skončí chybou `password authentication failed for user "postgres"`
|
|
|
|
🚨 **DŮLEŽITÉ: Toto řešení je POUZE pro nové instalace** 🚨
|
|
Pokud máte existující instanci Twenty s produkčními daty, **NEPROVÁDĚJTE** tyto kroky, protože trvale smažou vaši databázi!
|
|
|
|
Při první instalaci Twenty můžete chtít změnit výchozí heslo pro databázi.
|
|
Heslo, které nastavíte během první instalace, se stane trvale uloženým v objemu databáze. Pokud se později pokusíte toto heslo změnit v konfiguraci, aniž byste odstranili starý objem, dojde k chybám autentizace, protože databáze stále používá původní heslo.
|
|
|
|
⚠️ VAROVÁNÍ: Následující kroky trvale SMAŽÍ veškerá data z databáze! ⚠️
|
|
Pokračujte pouze v případě, že se jedná o novou instalaci bez důležitých dat.
|
|
|
|
Chcete-li aktualizovat `PG_DATABASE_PASSWORD`, potřebujte:
|
|
|
|
```sh
|
|
# Update the PG_DATABASE_PASSWORD in .env
|
|
docker compose down --volumes
|
|
docker compose up -d
|
|
```
|
|
|
|
#### Nalezeny konce řádků CR [Windows]
|
|
|
|
K tomu dochází díky znakům s liniovým jádrem Windows v kombinaci s konfigurací Git. Zkuste spustit:
|
|
|
|
```
|
|
git config --global core.autocrlf false
|
|
```
|
|
|
|
Pak smažte úložiště a naklonujte jej znovu.
|
|
|
|
#### Chybí schéma metadat
|
|
|
|
Během instalace Twenty musíte nastavit svou postgres databázi s správnými schématy, rozšířeními a uživateli.
|
|
Pokud se vám podaří spustit toto nastavování, měli byste mít ve své databázi schémata `default` a `metadata`.
|
|
Pokud nemáte, ujistěte se, že na vašem počítači není spuštěna více než jedna PostgreSQL instance.
|
|
|
|
#### Nelze najít modul 'twenty-emails' ani jeho odpovídající deklarace typů.
|
|
|
|
Před inicializací databáze musíte vytvořit balíček `dvacet e-mailů` (`npx nx spustit dvacet e-mailů:build`).
|
|
|
|
#### Chybí balíček twenty-x
|
|
|
|
Ujistěte se, že v kořenovém adresáři spouštíte `yarn` a poté spusťte `npx nx server:dev twenty-server`. Pokud stále nefunguje, zkuste chybějící balíček sestavit ručně.
|
|
|
|
#### Lint při ukládání nefunguje
|
|
|
|
Toto by mělo fungovat přímo s nainstalovaným rozšířením Oxc (`oxc.oxc-vscode`). Pokud to nefunguje, zkuste to přidat do nastavení VS kódu (rozsah dev kontejneru):
|
|
|
|
```
|
|
"editor.codeActionsOnSave": {
|
|
|
|
"source.fixAll.oxc": "explicit"
|
|
|
|
}
|
|
```
|
|
|
|
#### Při běhu `npx nx start` nebo `npx nx start 21 front`, je vyhozena chyba mimo paměť
|
|
|
|
Spusťte pouze služby, které potřebujete, místo `npx nx start`. Například pokud pracujete na serveru, spusťte pouze `npx nx worker twenty-server`
|
|
|
|
**Pokud to nefunguje:**
|
|
Pokud jste se pokusili spustit pouze `npx nx run twenty-server:start` na WSL a selhává to s následující chybou paměti:
|
|
|
|
`FATAL ERROR: Ineffective mark-compacts near heap limit Allocation failed - JavaScript heap out of memory`
|
|
|
|
Práce je spustit následující příkaz v terminálu, nebo ho přidat do profilu `.bashrc` tak, aby byl použit automaticky:
|
|
|
|
`export NODE_OPTIONS="--max-old-space-size=8192"`
|
|
|
|
Příznak --max-old-space-size=8192 nastavuje horní limit 8 GB pro hromadu v Node.js; využití se škáluje s požadavkem aplikace.
|
|
Odkaz: https://stackoverflow.com/questions/56982005/where-do-i-set-node-options-max-old-space-size-2048
|
|
|
|
**Pokud to nefunguje:**
|
|
Zjistit, které procesy přebírají většinu RAM. Ve dvaceti letech jsme si všimli, že některá rozšíření VS kódu zabírala spoustu RAM, takže jsme je dočasně zakázali.
|
|
|
|
**Pokud to nefunguje:**
|
|
Restartování zařízení pomáhá vyčistit ducha procesy.
|
|
|
|
#### Při běhu `npx nx start` se v protokolech objevují podivné [0] a [1]
|
|
|
|
To je očekávané, protože příkaz `npx nx start` spouští více příkazů v pozadí
|
|
|
|
#### E-maily nejsou odesílány
|
|
|
|
Většinou je to proto, že `worker` neběží na pozadí. Zkuste spustit
|
|
|
|
```
|
|
npx nx worker twenty-server
|
|
```
|
|
|
|
#### Nelze připojit můj účet Microsoft 365 k dvaceti
|
|
|
|
Většinou je to proto, že váš administrátor pro váš účet nepovolil licenci Microsoft 365. Zkontrolujte [https://admin.microsoft.com/](https://admin.microsoft.com/Adminportal/Home).
|
|
|
|
Pokud máte chybový kód `AADSTS50020`, pravděpodobně používáte osobní účet Microsoft. Tento přístup ještě není podporován. Více informací [zde](https://learn.microsoft.com/fr-fr/troubleshoot/entra/entra-id/app-integration/error-code-aadsts50020-user-account-identity-provider-does-not-exist)
|
|
|
|
#### Při běhu `yarn` se varování zobrazí v konzoli
|
|
|
|
Varování informují o načítání dalších závislostí, které nejsou explicitně uvedeny v `package.json`, takže pokud se neobjeví žádná vážná chyba, vše by mělo fungovat podle očekávání.
|
|
|
|
#### Když uživatel přistupuje na přihlašovací stránku, objeví se v záznamech chyba o neautorizovaném uživateli, který se snaží získat přístup k pracovnímu prostoru
|
|
|
|
To je očekáváno jako uživatel je neautorizovaný při odhlášení, protože jeho identita nebyla ověřena.
|
|
|
|
#### Jak zkontrolovat, zda váš worker běží?
|
|
|
|
* Jděte na [webhook-test.com](https://webhook-test.com/) a zkopírujte **Svou unikátní webhook URL**.
|
|
|
|
<div style={{textAlign: 'center'}}>
|
|
<img src="/images/docs/developers/self-hosting/webhook-test.jpg" alt="Test webhooku" />
|
|
</div>
|
|
|
|
* Otevřete svou Twenty aplikaci, přejděte na `/settings` a na levé dolní části obrazovky aktivujte přepínač **Pokročilé**.
|
|
* Vytvořte nový webhook.
|
|
* Vložte **Svou unikátní webhook URL** do pole **Endpoint Url** ve Twenty. Nastavte **Filtry** na `Companies` a `Created`.
|
|
|
|
<div style={{textAlign: 'center'}}>
|
|
<img src="/images/docs/developers/self-hosting/webhook-settings.jpg" alt="Nastavení webhooku" />
|
|
</div>
|
|
|
|
* Přejděte na `/objects/companies` a vytvořte nový záznam společnosti.
|
|
* Vraťte se na [webhook-test.com](https://webhook-test.com/) a zkontrolujte, zda byla přijata nová **POST request**.
|
|
|
|
<div style={{textAlign: 'center'}}>
|
|
<img src="/images/docs/developers/self-hosting/webhook-test-result.jpg" alt="Výsledek testu webhooku" />
|
|
</div>
|
|
|
|
* Pokud byla přijata **POST request**, váš worker běží úspěšně. V opačném případě je potřeba zkontrolovat váš worker.
|
|
|
|
#### Front-end se nespustí a chyba vrátí TS5042: Možnost 'project' nemůže být smíchána se zdrojovými soubory na příkazové řádce
|
|
|
|
Komentář kontrolního skriptu v `packages/twenty-ui/vite-config.ts`, jak je zobrazen v příkladu níže:
|
|
|
|
```
|
|
plugins: [
|
|
react({ jsxImportSource: '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'],
|
|
},
|
|
}),
|
|
],
|
|
```
|
|
|
|
#### Administrační panel není přístupný
|
|
|
|
Spusťte `UPDATE core."user" SET "canAccessFullAdminPanel" = TRUE WHERE email = 'you@yourdomain.com';` v databázovém kontejneru, abyste získali přístup k administrátorskému panelu.
|
|
|
|
#### Při spuštění workflow dojde k chybě "Logic function execution is disabled. Set LOGIC_FUNCTION_TYPE to LOCAL or LAMBDA to enable."
|
|
|
|
V produkčním prostředí jsou logické funkce ve výchozím nastavení zakázané. Nastavte proměnnou prostředí `LOGIC_FUNCTION_TYPE` na `LOCAL` nebo `LAMBDA`, abyste je povolili. Toto lze nakonfigurovat pomocí proměnných prostředí nebo prostřednictvím proměnných databáze v administračním panelu. Podrobnosti najdete v [průvodci nastavením Logic Functions](/l/cs/developers/self-host/capabilities/setup#logic-functions-available-drivers).
|
|
|
|
#### Když napíšu zprávu v AI chatu, neodpoví okamžitě a musím aktualizovat stránku, abych viděl odpověď
|
|
|
|
To znamená, že vaší reverzní proxy chybí konfigurace pro streamované API odpovědi. Níže je uveden příklad konfigurace Nginx:
|
|
|
|
```
|
|
location ~* ^/api/.*stream|\/graphql\/stream {
|
|
proxy_pass http://twenty_backend;
|
|
proxy_http_version 1.1;
|
|
proxy_set_header Connection "";
|
|
proxy_set_header Host $host;
|
|
proxy_set_header X-Real-IP $remote_addr;
|
|
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
|
proxy_set_header X-Forwarded-Proto $scheme;
|
|
proxy_buffering off;
|
|
proxy_request_buffering off;
|
|
proxy_cache off;
|
|
gzip off;
|
|
#chunked_transfer_encoding off;
|
|
add_header X-Accel-Buffering no always;
|
|
}
|
|
```
|
|
|
|
### Sestavení Dockeru
|
|
|
|
#### Nelze se přihlásit
|
|
|
|
Pokud se nemůžete přihlásit po nastavení:
|
|
|
|
1. Spusťte následující příkazy:
|
|
```bash
|
|
docker exec -it twenty-server-1 yarn
|
|
docker exec -it twenty-server-1 npx nx database:reset --configuration=no-seed
|
|
```
|
|
2. Restartujte Docker kontejnery:
|
|
```bash
|
|
docker compose down
|
|
docker compose up -d
|
|
```
|
|
|
|
Všimněte si, že příkaz `database:reset` zcela vymaže databázi a znovu ji obnoví od nuly.
|
|
|
|
#### Problémy s připojením za reverzní proxy
|
|
|
|
Pokud provozujete Twenty za reverzní proxy a máte problémy s připojením:
|
|
|
|
1. **Ověřte SERVER_URL:**
|
|
|
|
Ujistěte se, že `SERVER_URL` ve vašem `.env` souboru odpovídá vaší externí přístupové URL, včetně `https`, pokud je SSL povoleno.
|
|
|
|
2. **Zkontrolujte nastavení reverzní proxy:**
|
|
|
|
* Potvrďte, že vaše reverzní proxy správně směruje požadavky na server Twenty.
|
|
* Ujistěte se, že záhlaví jako `X-Forwarded-For` a `X-Forwarded-Proto` jsou správně nastaveny.
|
|
|
|
3. **Restartujte služby:**
|
|
|
|
Po provedení změn restartujte jak reverzní proxy, tak kontejnery Twenty.
|
|
|
|
#### Chyba při nahrávání obrázku - přístup odepřen
|
|
|
|
Změna vlastnictví datové složky na hostiteli z uživatele root na jiného uživatele a skupinu tento problém vyřeší.
|
|
|
|
#### Chyba „Soubor nenalezen“ při testování funkce Logic v pracovním postupu
|
|
|
|
Spusťte příkaz `yarn command:prod application:rebuild-default-deps` ve svém kontejneru twenty-server, abyste opravili problém s chybějícími závislostmi.
|
|
|
|
## Získání pomoci
|
|
|
|
Pokud se setkáte s problémy, které tento průvodce nepokrývá:
|
|
|
|
* Zkontrolujte protokoly:
|
|
|
|
Zobrazte protokoly kontejneru kvůli chybovým zprávám:
|
|
|
|
```bash
|
|
docker compose logs
|
|
```
|
|
|
|
* Podpora komunity:
|
|
|
|
Obraťte se na [komunitu Twenty](https://github.com/twentyhq/twenty/issues) nebo [podpůrné kanály](https://discord.gg/cx5n4Jzs57) pro pomoc.
|