跳转到主要内容
Header

疑難排解

如果您在設置開發環境、升級實例或自托管時遇到任何問題,這裡有一些常見問題的解決方案。

自行託管

首次安裝結果為 password authentication failed for user "postgres"

🚨 重要提示:此解決方案僅適用於新安裝 🚨 如果您已經有一個包含生產數據的Twenty實例,請勿遵循這些步驟,因為它們將永久刪除您的數據庫! 在首次安裝Twenty時,您可能想要更改默認的數據庫密碼。 您在首次安裝時設置的密碼將永久存儲在數據庫卷中。 如果您後來嘗試在配置中更改此密碼而不刪除舊卷,則會遇到身份驗證錯誤,因為數據庫仍在使用原始密碼。 ⚠️ 警告:以下步驟將永久刪除所有數據庫數據! ⚠️ 只有在這是一個沒有重要數據的新安裝的情況下才進行。 要更新 PG_DATABASE_PASSWORD,您需要:
# 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數據庫。 如果您成功運行了這個配置,您應該在數據庫中擁有 defaultmetadata 架構。 如果沒有,請確保電腦上沒有運行多個postgres實例。

無法找到模組 ‘twenty-emails’ 或其相應的類型聲明。

您需要先構建 twenty-emails 包,然後再用 npx nx run twenty-emails:build 初始化數據庫。

缺少 twenty-x 包

確保在根目錄運行 yarn,然後運行 npx nx server:dev twenty-server。 如果還是無法運行,請嘗試手動構建缺失的包。

保存時的 Lint 不工作

這應該在安裝了eslint擴展的情況下開箱即用。 如果這不起作用,請嘗試將此添加到您的vscode設置(在開發容器範圍上):
"editor.codeActionsOnSave": {

  "source.fixAll.eslint": "explicit"

}

運行 npx nx startnpx nx start twenty-front 時,內存不足錯誤被拋出

packages/twenty-front/.env 中取消註釋 VITE_DISABLE_TYPESCRIPT_CHECKER=trueVITE_DISABLE_ESLINT_CHECKER=true 以禁用後台檢查,從而減少所需的RAM量。 如果不工作:
僅運行您需要的服務,而不是 npx nx start。 例如,如果您在服務器上工作,僅運行 npx nx worker twenty-server
如果不工作:
如果您嘗試僅在 WSL 上運行 npx nx run twenty-server:start,但失敗並顯示以下內存錯誤:
重大錯誤:在堆限制附近無效的標記緊湊分配失敗 - JavaScript 堆內存不足 解決方法是在終端執行以下命令,或將其添加到 .bashrc 配置檔中以自動設置: export NODE_OPTIONS="--max-old-space-size=8192" —max-old-space-size=8192 標誌為 Node.js 堆設置了一個上限8GB,使用需求隨應用程序需求而定。 參考資料:https://stackoverflow.com/questions/56982005/where-do-i-set-node-options-max-old-space-size-2048 如果不工作:
調查哪些進程佔用了您大部分的機器RAM。 在Twenty,我們注意到一些VScode擴展佔用了很多RAM,因此我們暫時禁用了它們。
如果不工作:
重啟您的機器有助於清理幽靈進程。

運行 npx nx start 時日誌中存在奇怪的 [0] 和 [1]

這是預期的,因為命令 npx nx start 在底層運行了更多命令

電子郵件未發送

大多數情況下,這是因為 worker 沒有在後台運行。 嘗試運行
npx nx worker twenty-server

無法連接我的 Microsoft 365 帳戶

大多數情況下,這是因為您的管理員未為您的帳戶啟用 Microsoft 365 許可證。 檢查 https://admin.microsoft.com/ 如果出現錯誤碼 AADSTS50020,這可能意味著您正在使用個人Microsoft帳戶。 這尚不支持。 查看更多信息 這裡

運行 yarn 時控制台中出現警告

警告提示會告知拉取一些未在 package.json 中明確聲明的附加依賴項,只要沒有出現嚴重錯誤,一切應該按預期運行。

當用戶訪問登錄頁面時,日誌中出現未授權用戶嘗試訪問工作區的錯誤

這是預期的,因為用戶在登出時未被授權,因為其身份未經驗證。

如何檢查您的 worker 是否正在運行?

Webhook test
  • Open your Twenty app, navigate to /settings, and enable the Advanced toggle at the bottom left of the screen.
  • Create a new webhook.
  • Paste Your Unique Webhook URL in the Endpoint Url field in Twenty. 將 Filters 設置為 CompaniesCreated
Webhook settings
  • Go to /objects/companies and create a new company record.
  • Return to webhook-test.com and check if a new POST request has been received.
Webhook test result
  • If a POST request is received, your worker is running successfully. 否則,您需要對您的 worker 進行疑難排解。

前端啟動失敗,返回錯誤 TS5042:選項 ‘project’ 不能與命令行上的源文件混合使用

註釋掉 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. 運行以下命令:
    docker exec -it twenty-server-1 yarn
    docker exec -it twenty-server-1 npx nx database:reset  --configuration=no-seed
    
  2. 重新啟動Docker容器:
    docker compose down
    docker compose up -d
    
請注意,database:reset 命令將完全擦除您的數據庫並從頭重建。

反向代理後的連接問題

如果您在反向代理後運行Twenty並遇到連接問題:
  1. 驗證 SERVER_URL: 確保 .env 文件中的 SERVER_URL 與您的外部訪問網址匹配,如果啟用了SSL,請包括 https
  2. 檢查反向代理設置:
    • 確認您的反向代理正確轉發了對Twenty服務器的請求。
    • 確保標頭如 X-Forwarded-ForX-Forwarded-Proto 已正確設置。
  3. 重啟服務: 進行更改後,重新啟動反向代理和Twenty容器。

上傳圖像時發生錯誤 - 權限被拒絕

將主機上數據文件夾的所有權從root切換到其他用戶和組解決了這個問題。

獲取幫助

如果您遇到本指南未涵蓋的問題:
  • 檢查日誌: 查看容器日誌以獲取錯誤信息:
    docker compose logs
    
  • 社區支持: 聯繫 Twenty社區支持渠道 獲取幫助。