1400c6e952
Created by Github action <!-- This is an auto-generated description by cubic. --> <a href="https://cubic.dev/pr/twentyhq/twenty/pull/21724?utm_source=github" target="_blank" rel="noopener noreferrer" data-no-image-dialog="true"><picture><source media="(prefers-color-scheme: dark)" srcset="https://www.cubic.dev/buttons/review-in-cubic-dark.svg"><source media="(prefers-color-scheme: light)" srcset="https://www.cubic.dev/buttons/review-in-cubic-light.svg"><img alt="Review in cubic" src="https://www.cubic.dev/buttons/review-in-cubic-dark.svg"></picture></a> <!-- End of auto-generated description by cubic. --> Co-authored-by: github-actions <github-actions@twenty.com>
88 lines
5.0 KiB
Plaintext
88 lines
5.0 KiB
Plaintext
---
|
|
title: Server local
|
|
description: Gestionează serverul Twenty Docker local — pornește, oprește, actualizează, rulează o instanță de testare în paralel și configurează manual SDK-ul.
|
|
icon: server
|
|
---
|
|
|
|
## Gestionarea serverului local
|
|
|
|
Folosiți `yarn twenty docker:*` pentru a controla containerul Twenty local:
|
|
|
|
| Comandă | Ce face |
|
|
| -------------------------------------- | ------------------------------------------------------------ |
|
|
| `yarn twenty docker:start` | Pornește serverul (descarcă imaginea dacă este necesar) |
|
|
| `yarn twenty docker:start 2.2.0` | Pornește o anumită versiune a serverului |
|
|
| `yarn twenty docker:start --port 3030` | Pornește pe un port personalizat |
|
|
| `yarn twenty docker:stop` | Oprește serverul (păstrează datele) |
|
|
| `yarn twenty docker:status` | Afișează URL-ul, versiunea și credențialele de autentificare |
|
|
| `yarn twenty docker:logs` | Transmite în flux jurnalele serverului |
|
|
| `yarn twenty docker:reset` | Șterge datele și pornește de la zero |
|
|
| `yarn twenty docker:upgrade` | Descarcă cea mai recentă imagine `twenty-app-dev` |
|
|
| `yarn twenty docker:upgrade 2.2.0` | Actualizează la o versiune specifică |
|
|
|
|
Datele persistă între reporniri în două volume Docker (`twenty-app-dev-data` pentru PostgreSQL, `twenty-app-dev-storage` pentru fișiere). Folosiți `reset` pentru a șterge totul.
|
|
|
|
## Fixarea versiunii serverului
|
|
|
|
Când nu este transmisă nicio versiune, `docker:start` rezolvă versiunea din intervalul `engines.twenty` al aplicației tale din `package.json` — același interval față de care serverul validează când aplicația ta este instalată. Pornește cea mai nouă imagine publicată `twenty-app-dev` care satisface intervalul, revenind la `latest` atunci când câmpul lipsește sau nicio versiune publicată nu se potrivește:
|
|
|
|
```json filename="package.json"
|
|
{
|
|
"engines": {
|
|
"twenty": ">=2.2.0"
|
|
}
|
|
}
|
|
```
|
|
|
|
Transmite explicit o versiune pentru a suprascrie intervalul pentru o singură rulare: `yarn twenty docker:start 2.3.0`. Dacă un container există deja pe o versiune diferită, `docker:start` îl actualizează pe loc (recreând containerul, dar păstrând volumele tale de date).
|
|
|
|
## Actualizarea imaginii serverului
|
|
|
|
`yarn twenty docker:upgrade` descarcă cea mai recentă imagine, compară digest-urile și recreează containerul doar dacă s-a schimbat ceva. Volumele de date sunt păstrate — doar containerul este înlocuit. Dacă a fost descărcată o imagine nouă și containerul rula, actualizarea pornește automat un container nou; rulați apoi `yarn twenty docker:start` pentru a aștepta până când devine funcțional.
|
|
|
|
```bash filename="Terminal"
|
|
yarn twenty docker:upgrade # Latest
|
|
yarn twenty docker:upgrade 2.2.0 # Specific version
|
|
```
|
|
|
|
Puteți verifica versiunea care rulează cu `yarn twenty docker:status` (aceasta afișează `APP_VERSION` încorporat în container).
|
|
|
|
## Rularea unei instanțe de test în paralel
|
|
|
|
Adăugați `--test` la orice comandă `docker:*` pentru a gestiona o a doua instanță, complet izolată — utilă pentru teste de integrare sau pentru a experimenta fără a atinge datele principale de dezvoltare:
|
|
|
|
| Comandă | Ce face |
|
|
| ----------------------------------- | --------------------------------------------------- |
|
|
| `yarn twenty docker:start --test` | Pornește instanța de test (implicit pe portul 2021) |
|
|
| `yarn twenty docker:stop --test` | Oprește-o |
|
|
| `yarn twenty docker:status --test` | Afișează-i starea |
|
|
| `yarn twenty docker:logs --test` | Transmite în flux jurnalele sale |
|
|
| `yarn twenty docker:reset --test` | Șterge-i datele |
|
|
| `yarn twenty docker:upgrade --test` | Actualizează-i imaginea |
|
|
|
|
Instanța de test are propriul container (`twenty-app-dev-test`), propriile volume (`twenty-app-dev-test-data`, `twenty-app-dev-test-storage`) și propria configurație — rulează alături de instanța principală, fără conflicte. Combinați `--test` cu `--port` pentru a înlocui portul 2021.
|
|
|
|
## Configurare manuală (fără generator)
|
|
|
|
Săriți peste generatorul de schelet dacă adăugați SDK-ul într-un proiect existent:
|
|
|
|
```bash filename="Terminal"
|
|
yarn add twenty-sdk twenty-client-sdk
|
|
```
|
|
|
|
Adăugați scriptul în `package.json`:
|
|
|
|
```json filename="package.json"
|
|
{
|
|
"scripts": {
|
|
"twenty": "twenty"
|
|
}
|
|
}
|
|
```
|
|
|
|
Acum puteți rula `yarn twenty dev`, `yarn twenty docker:start` și restul.
|
|
|
|
<Note>
|
|
Nu instalați `twenty-sdk` global — fixați-l per proiect astfel încât fiecare aplicație să folosească propria versiune.
|
|
</Note>
|