# Instalează Todomator cu Node.js și PostgreSQL, Docker sau Docker Compose

> Pornește Todomator manual, cu imaginea din Docker Hub sau cu Docker Compose, ce face prima pornire, contul implicit și cum actualizezi o bază de date existentă.

Framework: todomator
Product: Todomator (todomator@1.7)
Language: ro
Content-SHA256: 89a9d29fa8478ab22af145f88dff1c55608a824b5bcd6585667c725003fc2312
Snapshot: c0700e321579725c5cf4f5ace1ad7d2866d1b4f93c24a63c0b41b6b7998e976c
Sources: 
Review: not-recorded

Todomator are nevoie de ultima versiune de **Node.js** și de o bază de date **PostgreSQL**. **Nu** rula tu însuți `database.sql`: Todomator folosește acel script intern când pornește pe o bază de date goală.

## Manual

1. Instalează Node.js și PostgreSQL și creează o bază de date pentru Todomator.
2. Descarcă [codul sursă](https://github.com/totaljs/todomator).
3. Instalează dependențele în rădăcina aplicației:

```bash
npm install
```

4. Setează conexiunea în fișierul `config`. Citește variabila de mediu `DATABASE` (linia `database (env) : DATABASE`) și are o linie `database : postgresql://total:platform@127.0.0.1:5432/todomator` ca model. Același fișier are `$api : /api/` (adresa API-ului) și o linie `mail` cu setările SMTP ca obiect JSON.
5. Rulează-l (scriptul `start` este `node index.js 8000`):

```bash
node index.js
```

6. Deschide `http://127.0.0.1:8000`.

## Docker Hub

```bash
docker pull totalplatform/todomator
docker run --env DATABASE='postgresql://user:pass@hostname/database' -p 8000:8000 totalplatform/todomator
```

## Docker Compose

```bash
git clone https://github.com/totaljs/todomator.git
cd todomator
docker compose up
```

## Prima pornire

Dacă tabelul `tbl_ticket` nu există în schema `public`, Todomator rulează `database.sql` cu un identificator generat, un secret și hash-ul parolei primului utilizator, apoi încarcă configurația și etichetele. Cu variabila de mediu `DATABASE` (Docker) așteaptă mai întâi trei secunde. Scriptul creează stările, primul utilizator și configurația. Serverul rămâne pe pauză (`PAUSESERVER('Database')`) până când baza de date este gata.

## Prima autentificare

README-ul dă contul implicit:

```text
login : info@totaljs.com
password : admin
```

Contul este creat cu numele John Connor și drepturi de administrator (`sa`). **Schimbă parola** după autentificare și configurează [setările](/en/todomator/settings-and-database/).

## Actualizare

Pentru o instalație existentă, README-ul trimite la scripturile de actualizare ale depozitului în loc de `database.sql`: `database_1-3.sql`, `database_1-4.sql`, `database_1-5.sql`, `database_1-6.sql` și `database-20240119.sql`. Aplică-le pe cele mai noi decât versiunea ta; fișierul `version` al depozitului listează ce a schimbat fiecare versiune (de exemplu, versiunea 1.7 a adăugat autentificarea cu doi factori și a îmbunătățit căutarea și pluginurile de rapoarte, semne de carte și utilizatori).
