Created by Github action --------- Co-authored-by: Crowdin Bot <support+bot@crowdin.com> Co-authored-by: github-actions <github-actions@twenty.com>
226 lines
15 KiB
Plaintext
226 lines
15 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>
|
|
|
|
## Αντιμετώπιση προβλημάτων
|
|
|
|
Αν συναντήσετε κάποιο πρόβλημα κατά την διαμόρφωση του περιβάλλοντος για ανάπτυξη, την αναβάθμιση της έκδοσης σας ή τη φιλοξενία στο δικό σας διακομιστή, εδώ είναι μερικές λύσεις για κοινά προβλήματα.
|
|
|
|
### Αυτο-φιλοξενία
|
|
|
|
#### Πρώτη εγκατάσταση οδηγεί στο `η πιστοποίηση κωδικού απέτυχε για τον χρήστη "postgres"`
|
|
|
|
🚨 **ΣΗΜΑΝΤΙΚΟ: Αυτή η λύση είναι ΜΟΝΟ για φρέσκες εγκαταστάσεις** 🚨
|
|
Αν έχετε ήδη υπάρχουσα εγκατάσταση Twenty με δεδομένα παραγωγής, **ΜΗΝ** ακολουθήσετε αυτά τα βήματα καθώς θα διαγράψουν μόνιμα τη βάση δεδομένων σας!
|
|
|
|
Κατά την εγκατάσταση του Twenty για πρώτη φορά, μπορεί να θέλετε να αλλάξετε τον προεπιλεγμένο κωδικό πρόσβασης της βάσης δεδομένων.
|
|
Ο κωδικός που ορίζετε κατά την πρώτη εγκατάσταση αποθηκεύεται μόνιμα στον όγκο της βάσης δεδομένων. Αν προσπαθήσετε αργότερα να αλλάξετε αυτόν τον κωδικό στην παραμετροποίηση σας χωρίς να αφαιρέσετε το παλιό volume, θα λάβετε σφάλματα πιστοποίησης επειδή η βάση δεδομένων εξακολουθεί να χρησιμοποιεί τον αρχικό κωδικό.
|
|
|
|
⚠️ ΠΡΟΕΙΔΟΠΟΙΗΣΗ: Τα ακόλουθα βήματα ΘΑ ΔΙΑΓΡΑΨΟΥΝ ΟΛΑ τα δεδομένα της βάσης! ⚠️
|
|
Συνεχίστε μόνο αν πρόκειται για φρέσκια εγκατάσταση χωρίς σημαντικά δεδομένα.
|
|
|
|
Για να ενημερώσετε το `PG_DATABASE_PASSWORD` χρειάζεται να:
|
|
|
|
```sh
|
|
# Update the PG_DATABASE_PASSWORD in .env
|
|
docker compose down --volumes
|
|
docker compose up -d
|
|
```
|
|
|
|
#### CR line breaks found [Windows]
|
|
|
|
This is due to the line break characters of Windows and the git configuration. Δοκιμάστε να εκτελέσετε:
|
|
|
|
```
|
|
git config --global core.autocrlf false
|
|
```
|
|
|
|
Στη συνέχεια διαγράψτε το αποθετήριο και αντιγράψτε το ξανά.
|
|
|
|
#### Απουσία μεταδεδομένων (schema)
|
|
|
|
Κατά την εγκατάσταση του Twenty, πρέπει να προμηθεύσετε τη βάση PostgreSQL με τα σωστά schemas, τις επεκτάσεις και τους χρήστες.
|
|
Αν καταφέρετε να εκτελέσετε αυτήν την προμήθεια, θα πρέπει να έχετε `default` και `metadata` schemas στη βάση σας.
|
|
Αν δεν το κάνετε, βεβαιωθείτε ότι δεν έχετε περισσότερες από μία περιπτώσεις PostgreSQL να τρέχουν στον υπολογιστή σας.
|
|
|
|
#### Δεν είναι δυνατή η εύρεση του module 'twenty-emails' ή των αντίστοιχων δηλώσεων τύπου του.
|
|
|
|
Πρέπει να κατασκευάσετε το πακέτο `twenty-emails` πριν από την εκκίνηση της βάσης δεδομένων με `npx nx run twenty-emails:build`
|
|
|
|
#### Απουσία πακέτου twenty-x
|
|
|
|
Βεβαιωθείτε ότι έχετε εκτελέσει το yarn στο ριζικό κατάλογο και έπειτα εκτελέστε `npx nx server:dev twenty-server`. Αν αυτό δεν λειτουργεί ακόμα, προσπαθήστε να κατασκευάσετε το απουσιάζον πακέτο χειροκίνητα.
|
|
|
|
#### Lint στην Αποθήκευση δεν λειτουργεί
|
|
|
|
Αυτό πρέπει να λειτουργεί αυτόματα με την εγκατάσταση της επέκτασης eslint. Αν δεν λειτουργεί, δοκιμάστε να προσθέσετε αυτό στις ρυθμίσεις του vscode σας (στο πλαίσιο του dev container):
|
|
|
|
```
|
|
"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` για να απενεργοποιήσετε τους ελέγχους παρασκηνίου, μειώνοντας έτσι το απαιτούμενο RAM.
|
|
|
|
**Εάν δεν λειτουργεί:**
|
|
Εκτελέστε μόνο τις υπηρεσίες που χρειάζεστε, αντί για `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"`
|
|
|
|
Το flag --max-old-space-size=8192 ορίζει ένα ανώτατο όριο 8GB για το heap του Node.js. Η χρήση κλιμακώνεται με την ζήτηση της εφαρμογής.
|
|
Αναφορά: https://stackoverflow.com/questions/56982005/where-do-i-set-node-options-max-old-space-size-2048
|
|
|
|
**Εάν δεν λειτουργεί:**
|
|
Ερευνήστε ποιες διεργασίες καταλαμβάνουν τον περισσότερο χώρο RAM στον υπολογιστή σας. Στο Twenty, παρατηρήσαμε ότι μερικές επεκτάσεις του VSCode καταναλώνουν πολύ RAM και έτσι τις απενεργοποιούμε προσωρινά.
|
|
|
|
**Εάν δεν λειτουργεί:**
|
|
Η επανεκκίνηση του υπολογιστή σας συμβάλλει στον καθαρισμό των ghost processes.
|
|
|
|
#### Κατά τη λειτουργία `npx nx start` υπάρχουν περίεργα [0] και [1] στα logs
|
|
|
|
Αυτό αναμένεται καθώς η εντολή `npx nx start` εκτελεί επιπλέον εντολές στο παρασκήνιο
|
|
|
|
#### Δεν στέλνονται emails
|
|
|
|
Τις περισσότερες φορές, αυτό συμβαίνει επειδή το `worker` δεν είναι σε λειτουργία στο παρασκήνιο. Δοκιμάστε να εκτελέσετε
|
|
|
|
```
|
|
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`, οπότε όσο δεν εμφανίζεται κάποιο σοβαρό σφάλμα, όλα πρέπει να λειτουργούν όπως προβλέπεται.
|
|
|
|
#### Όταν ο χρήστης έχει πρόσβαση στη σελίδα σύνδεσης, εμφανίζεται σφάλμα σχετικά με άδικοχρείαστο χρήστη που προσπαθεί να προσπελάσει τον χώρο εργασίας στα logs
|
|
|
|
Αυτό είναι αναμενόμενο αφού ο χρήστης είναι μη εξουσιοδοτημένος όταν το αποσυνδέθηκε, καθώς η ταυτότητά του δεν έχει επαληθευτεί.
|
|
|
|
#### Πώς να ελέγξετε αν ο worker σας τρέχει;
|
|
|
|
- Μεταβείτε στο [webhook-test.com](https://webhook-test.com/) και αντιγράψτε το **Your Unique Webhook URL**.
|
|
|
|
<div style={{textAlign: 'center'}}>
|
|
<img src="/images/docs/developers/self-hosting/webhook-test.jpg" alt="Webhook test" />
|
|
</div>
|
|
- Ανοίξτε την εφαρμογή Twenty, μεταβείτε στο `/settings` και ενεργοποιήστε τον **Προηγμένο** διακόπτη στο κάτω μέρος της οθόνης.
|
|
- Δημιουργήστε ένα νέο webhook.
|
|
- Επικολλήστε το **Your Unique Webhook URL** στο πεδίο **Endpoint Url** στο Twenty. Ορίστε τα **Φίλτρα** στο `Companies` και `Created`.
|
|
<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**, το worker σας τρέχει επιτυχώς. Otherwise, you need to troubleshoot your worker.
|
|
|
|
#### Το Front-end αποτυγχάνει να ξεκινήσει και επιστρέφει το σφάλμα TS5042: Η επιλογή 'project' δεν μπορεί να συνδυαστεί με αρχεία πηγής στη γραμμή εντολών
|
|
|
|
Comment out checker plugin in `packages/twenty-ui/vite-config.ts` like in example below
|
|
|
|
```
|
|
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';` στο container της βάσης για να αποκτήσετε πρόσβαση στο πάνελ διαχείρισης.
|
|
|
|
### 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 containers:
|
|
```bash
|
|
docker compose down
|
|
docker compose up -d
|
|
```
|
|
|
|
Σημειώστε ότι η εντολή database:reset θα διαγράψει εντελώς τη βάση δεδομένων σας και θα την δημιουργήσει ξανά από το μηδέν.
|
|
|
|
#### Προβλήματα σύνδεσης πίσω από Reverse Proxy
|
|
|
|
Αν τρέχετε το Twenty πίσω από ένα reverse proxy και αντιμετωπίζετε προβλήματα σύνδεσης:
|
|
|
|
1. **Επιβεβαιώστε το SERVER_URL:**
|
|
|
|
Βεβαιωθείτε ότι το `SERVER_URL` στο αρχείο `.env` σας ταιριάζει με την εξωτερική διεύθυνση πρόσβασης σας, συμπεριλαμβανομένου του `https` αν ο SSL είναι ενεργοποιημένος.
|
|
|
|
2. **Ελέγξτε τις ρυθμίσεις του Reverse Proxy:**
|
|
|
|
- Επιβεβαιώστε ότι το reverse proxy σας προωθεί σωστά τα αιτήματα στον server του Twenty.
|
|
- Βεβαιωθείτε ότι τα headers όπως τα `X-Forwarded-For` και `X-Forwarded-Proto` είναι σωστά ορισμένα.
|
|
|
|
3. **Επανεκκινήστε υπηρεσίες:**
|
|
|
|
Μετά τις αλλαγές, επανεκκινήστε τόσο το reverse proxy όσο και τα container του Twenty.
|
|
|
|
#### Σφάλμα κατά την αποστολή μιας εικόνας - απόρριψη άδειας
|
|
|
|
Η αλλαγή ιδιοκτησίας του φακέλου δεδομένων στον host από root σε άλλο χρήστη και ομάδα λύνει αυτό το πρόβλημα.
|
|
|
|
## Λήψη Βοήθειας
|
|
|
|
Αν συναντήσετε προβλήματα που δεν καλύπτονται σε αυτόν τον οδηγό:
|
|
|
|
- Ελέγξτε τα αρχεία καταγραφής:
|
|
|
|
Δείτε τα αρχεία καταγραφής των container για μηνύματα σφάλματος:
|
|
|
|
```bash
|
|
docker compose logs
|
|
```
|
|
|
|
- Υποστήριξη από την Κοινότητα:
|
|
|
|
Επικοινωνήστε με την [Κοινότητα του Twenty](https://github.com/twentyhq/twenty/issues) ή τα [κανάλια υποστήριξης](https://discord.gg/cx5n4Jzs57) για βοήθεια. |