ForgeFlow
nl

Flow

Flow installeren en de eerste keer aanmelden

Flow · flow@11.1 flowinstalldockerloginfirst start

Uitvoeren met Node.js

Flow heeft alleen Node.js nodig: geen database, geen externe dienst.

git clone https://github.com/totaljs/flow.git
cd flow
npm install
npm run start

npm run start voert node index.js 8000 uit. De poort is optioneel op de opdrachtregel en de standaard is 8000, dus je opent http://localhost:8000. Voeg --release toe om in release-modus te draaien.

Uitvoeren met Docker

docker pull totalplatform/flow
docker run -p 8000:8000 totalplatform/flow

De docker-compose.yaml van de repository koppelt poort 8000 en houdt twee volumes bij: de map databases (instellingen en gebruiker) en de map flowstream (je streams). Bewaar die twee volumes en je kunt de container bij elke update vervangen.

De eerste aanmelding

Bij de eerste start maakt Flow de enige gebruiker van de toepassing aan met een willekeurige login en een willekeurig wachtwoord. Tot de eerste geslaagde aanmelding toont de aanmeldpagina ze in een kader (Default account) met een knop Fill in the form: klik erop en meld je aan. Vanaf dat moment verwijdert Flow de leesbare kopie van het wachtwoord uit zijn voorkeuren en verschijnt het kader niet meer, dus open meteen het wachtwoordformulier van de toepassing en stel een eigen login en wachtwoord in. Meld je voor het eerst aan zodra je een nieuwe installatie start, voordat iemand anders het adres kan bereiken.

Enkele details van de aanmelding, gelezen uit de broncode:

  • Het wachtwoord wordt opgeslagen als SHA-256-hash met de cookie_secret van de installatie als salt, en de sessie is een cookie van een maand, versleuteld met hetzelfde geheim. Flow genereert de cookienaam en het geheim de eerste keer en bewaart ze in databases/config.json.
  • Na herhaalde mislukte pogingen wordt een adres geblokkeerd (de blokkade wordt elke 15 minuten gewist).
  • Wanneer de instellingen de tokens van een OpenPlatform bevatten (op_reqtoken, op_restoken), wordt de aanmeldpagina vervangen door de aanmelding van dat OpenPlatform en bepalen de rechten Create Flows en Remove Flows wie streams mag maken en verwijderen.

Waar de gegevens staan

MapWat erin staat
databases/config.json (cookienaam en geheim) en memorize_preferences.json (naam, tokens, de gebruiker, de env, de URL’s van de componenten)
flowstream/database.json met elke FlowStream: zijn ontwerp, componenten, variabelen en notities
private/bestanden die de streams schrijven en die je kunt opsommen met het token van Flow
public/cdn/cache van de interfacecomponenten die Flow downloadt zodra ze voor het eerst nodig zijn

Om Flow naar een andere machine te verplaatsen, kopieer je databases/ en flowstream/.

Bijwerken

Download de nieuwe versie van de repository (het bestand version zegt welke je draait: 11.1 in de hier gedocumenteerde revisie) of haal de nieuwe Docker-image op en start die met dezelfde volumes.