Instalacja Flow i pierwsze logowanie
Uruchomienie przez Node.js
Flow potrzebuje tylko Node.js: żadnej bazy danych ani zewnętrznej usługi.
git clone https://github.com/totaljs/flow.git
cd flow
npm install
npm run startnpm run start uruchamia node index.js 8000. Port jest opcjonalny w wierszu poleceń, a domyślny to 8000, więc otwierasz http://localhost:8000. Dodaj --release, aby uruchomić w trybie release.
Uruchomienie przez Docker
docker pull totalplatform/flow
docker run -p 8000:8000 totalplatform/flowdocker-compose.yaml w repozytorium mapuje port 8000 i utrzymuje dwa wolumeny: folder databases (ustawienia i użytkownik) oraz folder flowstream (Twoje przepływy). Zachowaj te dwa wolumeny, a kontener możesz wymieniać przy każdej aktualizacji.
Pierwsze logowanie
Przy pierwszym uruchomieniu Flow tworzy jedynego użytkownika aplikacji z losowym loginem i losowym hasłem. Do pierwszego udanego logowania strona logowania pokazuje je w ramce (Default account) z przyciskiem Fill in the form: kliknij go i zaloguj się. Od tej chwili Flow usuwa ze swoich preferencji jawną kopię hasła i ramka znika, więc od razu otwórz formularz hasła w aplikacji i ustaw własny login i hasło. Pierwszego logowania dokonaj zaraz po uruchomieniu nowej instalacji, zanim ktokolwiek inny dotrze pod ten adres.
Kilka szczegółów logowania, odczytanych ze źródeł:
- Hasło jest przechowywane jako skrót SHA-256 z
cookie_secretinstalacji jako solą, a sesja to cookie na miesiąc zaszyfrowane tym samym sekretem. Flow generuje nazwę cookie i sekret za pierwszym razem i zapisuje je wdatabases/config.json. - Po powtarzających się nieudanych próbach adres jest blokowany (blokada jest czyszczona co 15 minut).
- Gdy ustawienia zawierają tokeny OpenPlatform (
op_reqtoken,op_restoken), strona logowania zostaje zastąpiona logowaniem do tego OpenPlatform, a uprawnienia Create Flows i Remove Flows kontrolują, kto może tworzyć i usuwać przepływy.
Gdzie są dane
| Folder | Co zawiera |
|---|---|
databases/ | config.json (nazwa i sekret cookie) oraz memorize_preferences.json (nazwa, tokeny, użytkownik, env, adresy komponentów) |
flowstream/ | database.json z każdym FlowStreamem: jego projekt, komponenty, zmienne i notatki |
private/ | pliki zapisywane przez przepływy, które możesz wylistować tokenem Flow |
public/cdn/ | pamięć podręczna komponentów interfejsu, które Flow pobiera przy pierwszym użyciu |
Aby przenieść Flow na inną maszynę, skopiuj databases/ i flowstream/.
Aktualizacja
Pobierz nową wersję repozytorium (plik version mówi, którą uruchamiasz: 11.1 w opisanej tu rewizji) albo pobierz nowy obraz Docker i uruchom go z tymi samymi wolumenami.