Flow installeren en de eerste keer aanmelden
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 startnpm 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/flowDe 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_secretvan 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 indatabases/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
| Map | Wat 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.