# OpenPlatform installeren met Node.js en PostgreSQL, Docker of Docker Compose

> Start OpenPlatform met de hand, met de image van Docker Hub of met Docker Compose, wat de eerste start doet en wat je direct na het aanmelden configureert.

Framework: openplatform
Product: OpenPlatform (openplatform@5)
Language: nl
Content-SHA256: 8f0334a9be9044fc4da937fd657d67962881c3b32fe5ab047e71694edf57e6f3
Snapshot: c0700e321579725c5cf4f5ace1ad7d2866d1b4f93c24a63c0b41b6b7998e976c
Sources: 
Review: not-recorded

OpenPlatform heeft de nieuwste **Node.js** en een **PostgreSQL**-database nodig. Er zijn drie manieren om het te starten, alle uit de README van de repository. Voer `database.sql` **niet** zelf uit: OpenPlatform gebruikt dat script intern bij de eerste start.

## Met de hand

1. Installeer Node.js en PostgreSQL en maak een lege database voor OpenPlatform.
2. Download de [broncode](https://github.com/totaljs/openplatform).
3. Installeer de afhankelijkheden in de hoofdmap van de toepassing:

```bash
npm install
```

4. Zet de verbindingsreeks in het bestand `config` (het bestand heeft de regel `database : postgresql://user:pass@localhost:5432/database` als voorbeeld en een regel `database (env) : DATABASE` die hem uit de omgevingsvariabele `DATABASE` leest).
5. Start het (het script `start` van `package.json` voert `node index.js 8000` uit):

```bash
node index.js
```

6. Open `http://127.0.0.1:8000` en **open eerst van alles de instellingen en configureer het platform** (de README markeert deze stap als belangrijk; de instellingen staan in [instellingen en database](/en/openplatform/settings-and-database/)).

## Docker Hub

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

## Docker Compose

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

## Wat de eerste start doet

Wanneer de database nog geen OpenPlatform-tabellen heeft (hij zoekt de tabel `cl_config` in het schema `op`), laadt de toepassing `database.sql` en vervangt de plaatshouders door waarden die hij genereert: de identificatie van de installatie, de cookienaam, de geheimen en salts, de tokens en de eerste gebruiker en groep. Daarna laadt hij de configuratie en start de authenticatie (`definitions/init.js`). Met de omgevingsvariabele `DATABASE` (Docker) wacht hij daarvoor drie seconden, zodat de database kan opstarten. In beide gevallen staat de server op pauze (`PAUSESERVER('Database')`) tot de database klaar is.

## De eerste aanmelding

De README geeft het standaardaccount:

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

Meld je aan, **wijzig dat wachtwoord** (het portaal heeft daarvoor de accountactie) en configureer de instellingen. Onthoud de regel uit de README: elke toepassing die je toevoegt moet aan een groep worden toegewezen, anders ziet niemand hem ([groepen en rechten](/en/openplatform/groups-and-permissions/)).
