Laborbuch — instalacja krok po kroku
Od pustego serwera do działającego Laborbucha w ok. 10 minut — bez wiedzy programistycznej.
Instalacja zajmuje około 10 minut i nie wymaga wiedzy programistycznej — skrypt zadaje kilka pytań i robi resztę sam. Ta strona tłumaczy każdy krok.
Czego potrzebujesz
- Serwer z Linuksem (np. Ubuntu lub Debian): minimum 2 GB RAM i 20 GB dysku (4 GB RAM, jeśli włączysz antywirus). Może to być tani serwer wynajęty w centrum danych (np. Hetzner, OVH — od ok. 5 €/mies.) albo komputer/serwer stojący u Ciebie w biurze.
- Docker — darmowe środowisko, w którym działa Laborbuch. Jeśli go nie ma, zainstalujesz jedną komendą (krok 1).
- Wariant zdalny (serwer w internecie): własna domena, np.
laborbuch.twojafirma.de, skierowana na adres IP serwera (rekord A u dostawcy domeny) oraz otwarte porty 80 i 443. - Wariant lokalny (serwer w biurze): nic więcej — wystarczy adres IP serwera w sieci firmowej.
Co właściwie robi skrypt?
Zaczynasz od czystego serwera — poza Dockerem (krok 1) niczego nie trzeba na nim wcześniej przygotowywać. Skrypt instaluje kompletny zestaw: aplikację Laborbuch, bazę danych oraz serwer WWW, który samodzielnie dba o szyfrowanie ruchu. W trybie zdalnym ten serwer WWW sam pozyskuje darmowy certyfikat SSL dla Twojej domeny i odnawia go automatycznie co około 3 miesiące — nie kupujesz certyfikatu, nie pilnujesz terminów przedłużenia i niczego nie konfigurujesz, a połączenia z Laborbuchem są od pierwszej minuty w pełni szyfrowane (kłódka w przeglądarce). W trybie lokalnym ruch też jest szyfrowany — certyfikat wystawia wewnętrzny urząd Twojej instalacji (opisane niżej).
Krok 1 — zaloguj się na serwer i zainstaluj Dockera
Połącz się z serwerem przez SSH (Windows: program PuTTY albo wbudowany terminal; macOS/Linux: aplikacja Terminal):
ssh root@ADRES-TWOJEGO-SERWERA
Jeśli Docker nie jest jeszcze zainstalowany, wklej i zatwierdź Enterem:
curl -fsSL https://get.docker.com | sh
Krok 2 — pobierz i uruchom skrypt instalacyjny
Wklej te dwie linie (każdą zatwierdź Enterem):
curl -fsSL -o install-laborbuch.sh https://koch-laboratory.com/download/install-laborbuch.sh
sh install-laborbuch.sh
Skrypt niczego nie wysyła do nas — wszystkie hasła i klucze powstają na Twoim serwerze i tam zostają.
Krok 3 — pytania skryptu i co odpowiedzieć
| Pytanie | Co znaczy | Co wpisać |
|---|---|---|
| Katalog instalacji | Folder, w którym zamieszkają program i dane | Enter (domyślny ./laborbuch) |
| Tryb: remote / local | remote = serwer w internecie z własną domeną; certyfikat SSL wyrobi się automatycznie. local = serwer w biurze, dostęp tylko z sieci firmowej |
Serwer w DC → remote; serwer w biurze → local |
| Domena (remote) | Adres, pod którym zespół otworzy Laborbuch | np. laborbuch.twojafirma.de (musi już wskazywać na serwer) |
| E-mail Let’s Encrypt (remote) | Powiadomienia o certyfikacie SSL | Twój e-mail administracyjny |
| Nazwa hosta lub IP (local) | Adres serwera w sieci biurowej | np. 192.168.1.50 |
| Antywirus (yes/no) | Skanowanie wgrywanych plików dowodowych (ClamAV z automatyczną aktualizacją bazy wirusów) | yes, jeśli zespół będzie wgrywał pliki (skany, dane pomiarowe) — wymaga ok. 1,5 GB RAM więcej. no, jeśli użyjecie trybu hash-only (pliki nie opuszczają komputerów) albo chcesz doinstalować później |
| Baza danych: sqlite / postgres | Gdzie system przechowuje dane | sqlite (wbudowana — zalecana). postgres tylko, gdy firma ma własny serwer PostgreSQL i administratora; skrypt poprosi wtedy o adres bazy (szczegóły niżej) |
| Login i hasło administratora | Pierwsze konto — nim zalogujesz się po instalacji | Login dowolny, hasło min. 12 znaków |
| Ścieżka do license.json | Plik licencji od Advena Partners | Jeśli już go masz — podaj ścieżkę; jeśli nie — Enter (patrz „Aktywacja”) |
Po ostatnim pytaniu skrypt pobiera oprogramowanie i uruchamia system — na koniec wypisze adres i login.
Aktywacja licencji
Plik license.json otrzymasz od nas e-mailem po zakupie. Wgraj go do katalogu instalacji na serwerze (nadpisując istniejący pusty plik) — np. programem WinSCP albo komendą z Twojego komputera:
scp license.json root@ADRES-SERWERA:laborbuch/license.json
Nic nie trzeba restartować — system wykryje licencję sam w ciągu chwili. Do czasu aktywacji instancja działa w trybie tylko-do-odczytu. Odnowienie licencji za rok = ten sam krok z nowym plikiem.
Tryb lokalny — jednorazowe zaufanie certyfikatu
W trybie local certyfikat SSL wystawia wewnętrzny urząd Twojej instalacji, więc przeglądarka przy pierwszym wejściu ostrzeże o „niezaufanym certyfikacie”. Aby ostrzeżenie zniknęło, zaimportuj na komputerach zespołu plik data/caddy/pki/authorities/local/root.crt z katalogu instalacji (Windows: dwuklik → Zainstaluj certyfikat → Zaufane główne urzędy certyfikacji). W trybie remote ten krok nie istnieje — certyfikat jest publicznie zaufany.
Baza danych: wbudowana (SQLite) czy PostgreSQL?
Skrypt zapyta o bazę danych. Dla zdecydowanej większości firm właściwa odpowiedź to sqlite (domyślna, wystarczy Enter):
- zero administracji i konfiguracji — działa od razu,
- kopie zapasowe i przywracanie jednym kliknięciem w panelu admina,
- wydajność z dużym zapasem dla każdego pakietu, także Institut.
postgres wybierz wyłącznie wtedy, gdy Twoja firma już ma serwer PostgreSQL i administratora, który nim zarządza. Skrypt poprosi wtedy o adres bazy w formacie postgres://uzytkownik:haslo@host:5432/nazwa_bazy — bazę i konto musi wcześniej przygotować Wasz administrator, a kopie zapasowe wykonuje się wtedy narzędziami serwera bazy (nie z panelu). Masz wątpliwości? Wybierz sqlite.
Bezpieczeństwo i prywatność Twoich danych
Kilka faktów, które możesz od razu przekazać działowi IT albo inspektorowi ochrony danych:
- Dane nie opuszczają Twojej firmy. Laborbuch działa w całości na Twoim serwerze — dostawca nie ma dostępu ani do instancji, ani do danych. Jedyne, co wychodzi na zewnątrz, to krótkie odciski kryptograficzne (hashe) do znakowania czasem — nigdy treść wpisów czy plików.
- Szyfrowanie w tranzycie i na dysku. Połączenia są zawsze szyfrowane (HTTPS w obu trybach instalacji), a pliki dowodowe dodatkowo szyfrowane na dysku algorytmem AES-256. Klucz szyfrujący powstaje podczas instalacji na Twoim serwerze i nigdy go nie opuszcza.
- Kontrola dostępu. Dwuskładnikowe logowanie (aplikacja, karta sprzętowa lub kod e-mail — metodę ustala administrator dla każdego konta), automatyczna blokada prób zgadywania haseł, role oraz maskowanie godzin współpracowników między sobą.
- Rejestr odporny na manipulacje. Zamkniętych wpisów nie da się zmienić ani usunąć (poprawki wyłącznie jawnym stornem), a każdy tydzień jest znakowany czasem w dwóch niezależnych kanałach — w tym w blockchainie Bitcoina. Dowód nienaruszalności można zweryfikować bez udziału dostawcy.
- Dziennik dostępu i kopie. System zapisuje, kto i kiedy przeglądał raporty oraz pobierał pliki; kopie zapasowe bazy klikasz w panelu, a ich odtworzenie zawsze zostawia ślad.
- Dokumentacja dla compliance (w j. niemieckim): TOM — środki techniczne i organizacyjne, art. 32 RODO, wzór umowy powierzenia (AVV), przechowywanie wg GoBD.
Po instalacji — pierwsze 15 minut
- Zaloguj się pod adresem z podsumowania (konto administratora).
- Panel admina → Ustawienia strony → Profil laboratorium: włącz/wyłącz integrację Git i wybierz tryb plików dowodowych (upload albo hash-only).
- Dodaj projekt i przypisz członków zespołu (Projekty → Dodaj).
- Załóż konta użytkownikom i przypisz im metodę 2FA (aplikacja / karta / e-mail).
- Panel admina → Kopie zapasowe bazy → utwórz pierwszą kopię.
Dalej poprowadzą Cię podręczniki: podręcznik użytkownika (codzienna praca zespołu) i podręcznik administratora (konfiguracja, zamykanie tygodni, kopie, licencja).
Najczęstsze problemy
- Strona nie odpowiada → na serwerze:
cd laborbuch && docker compose logs web(ostatnie linie mówią, co się dzieje). - Błąd certyfikatu w trybie remote → sprawdź, czy domena wskazuje na IP serwera (
ping domena) i czy porty 80/443 są otwarte w firewallu. - „Tryb tylko-do-odczytu” → brak lub nieważny plik licencji; sprawdź, czy
license.jsonjest w katalogu instalacji. - Godziny przesunięte względem zegara → Laborbuch wyświetla czasy w jednej strefie czasowej dla całej instalacji (domyślnie
Europe/Berlin). Jeśli zespół pracuje w innej strefie, w pliku.envw katalogu instalacji ustawTIME_ZONE=na nazwę IANA (np.Europe/Warsaw,Europe/Lisbon) i wykonajdocker compose up -d.
Wsparcie: info@dms-secure.de — w zgłoszeniu podaj wynik docker compose logs web (bez danych wrażliwych).