Własny serwer

Uruchom Sridu samodzielnie

Sridu to folder z plikami. Możesz otworzyć go na własnym komputerze, uruchomić dla całego domu z Dockerem albo wystawić w internecie. Poniżej wybierz sposób, który ci pasuje. Każdy jest opisany krok po kroku, bez potrzeby wcześniejszej wiedzy.

Chcesz tylko grać? Wtedy nic z tego nie jest ci potrzebne. Otwórz play.sridu.com w Chrome lub Edge, wszystko jest już gotowe i darmowe.

Sridu już działa? Strona administracyjna · Konfigurator · Wszystkie ustawienia

Wybierz sposób

Który jest dla mnie?

  • Same pliki Jeden komputer z kamerami. Pięć minut, bez instalacji poza małym programem pomocniczym.
  • Docker w domu Dla każdego telefonu, tabletu i każdej tarczy w domu lub w klubie. Na NAS-ie (Synology, Unraid), Raspberry Pi albo komputerze. Około 15 minut.
  • Serwer publiczny Własne Sridu na własnej domenie, dla klubu albo znajomych z dowolnego miejsca. Wymaga Dockera, domeny i https przed serwerem: w domu Cloudflare Tunnel, na wynajętym serwerze reverse proxy. Jeden wieczór.
  • Hosting WWW Cloudflare Pages, Netlify albo GitHub Pages. Za darmo i bez własnego serwera, ale bez strony administracyjnej i rankingu online.
sridu-231.zip Wersja 231 · 20 MB · cała aplikacja razem z plikami Dockera
Pobierz Sridu

Same pliki

Grasz na komputerze, do którego podłączone są kamery. Przeglądarka potrzebuje do tego małego serwera WWW: otwarcie index.html podwójnym kliknięciem nie działa, bo przeglądarka odmawia wtedy dostępu do kamer.

Windows

  1. Zainstaluj Pythona ze sklepu Microsoft Store (wyszukaj „Python”, wybierz najnowszą wersję). Jest darmowy i potrzebny tylko jako mały serwer WWW.
  2. Pobierz Sridu (sridu-latest.zip) i rozpakuj: prawy przycisk myszy na pliku, „Wyodrębnij wszystkie”.
  3. Otwórz terminal w folderze: otwórz rozpakowany folder, kliknij prawym przyciskiem puste miejsce, „Otwórz w terminalu”.
  4. Uruchom serwer WWW tym poleceniem i zostaw okno otwarte:
python -m http.server 8080
  1. Otwórz http://localhost:8080 w Chrome lub Edge. Gotowe. Aby zatrzymać, zamknij okno terminala.

macOS

  1. Pobierz Sridu (sridu-latest.zip). Safari samo rozpakuje go w folderze Pobrane.
  2. Otwórz terminal w folderze: w Finderze kliknij folder prawym przyciskiem, Usługi, „Nowy terminal w folderze”.
  3. Uruchom serwer WWW tym poleceniem i zostaw okno otwarte. Jeśli macOS zaproponuje instalację „narzędzi programistycznych wiersza poleceń”, zgódź się i potem uruchom polecenie jeszcze raz.
python3 -m http.server 8080
  1. Otwórz http://localhost:8080 w Chrome lub Edge. Gotowe. Aby zatrzymać, naciśnij Ctrl+C w terminalu.

Linux

  1. Otwórz terminal, pobierz i rozpakuj Sridu:
mkdir -p ~/sridu && cd ~/sridu
wget https://sridu.com/wp-content/themes/sridu/assets/download/sridu-latest.zip
unzip -q sridu-latest.zip && rm sridu-latest.zip
  1. Uruchom serwer WWW i zostaw terminal otwarty:
python3 -m http.server 8080
  1. Otwórz http://localhost:8080 w Chrome lub Chromium. Gotowe. Aby zatrzymać, naciśnij Ctrl+C.

Telefony i tablety nie uruchomią Sridu z plików, bo przeglądarka udostępnia kamerę i szyfrowanie do gier online tylko pod https:// albo na localhost. Mają za to dwie proste drogi. Otwórz play.sridu.com: jest darmowe, instaluje się jako aplikacja i po załadowaniu działa offline. Albo niech inne urządzenie w domu hostuje Sridu z Dockerem, np. NAS, Raspberry Pi lub komputer, i otwieraj je stamtąd.

Docker w domu

Docker uruchamia Sridu jako mały serwer. Każde urządzenie w twojej sieci, również telefony, może je wtedy otworzyć, ze stroną administracyjną, lobby i rankingiem. Ponieważ działa na https, każde urządzenie może też zainstalować Sridu jako aplikację. Kroki zależą od tego, gdzie działa Docker.

Tylko dla sieci domowej. W tej konfiguracji wszystkie urządzenia dzielą graczy: nazwy, PIN-y, statystyki i każda gra są przechowywane w /data/players.json na serwerze, a każdy, kto ma dostęp do tego Sridu, może czytać i zmieniać ten plik bez logowania. W domu właśnie tego chcesz. Nigdy nie udostępniaj tej konfiguracji w internecie: ani przez przekierowanie portów, ani przez tunel, ani na wynajętym serwerze. Do tego służy zakładka Serwer publiczny: nie przechowuje danych graczy na serwerze.

Synology

  1. Zainstaluj Container Manager z Centrum pakietów (DSM 7.2 lub nowszy).
  2. Wgraj Sridu na NAS: w File Station otwórz folder udostępniony docker, wgraj do niego sridu-latest.zip, kliknij plik prawym przyciskiem, „Wyodrębnij”, „Wyodrębnij tutaj”. Zmień nazwę nowego folderu sridu-… na sridu.
  3. Zmień dwa ustawienia: otwórz docker-compose.yml w Edytorze tekstu. Wpisz adres IP swojego NAS-a w SRIDU_HOSTS, np. SRIDU_HOSTS: "192.168.1.20". Ustaw PUID: "1026" i PGID: "100". Zapisz.
  4. Utwórz projekt: Container Manager, Projekt, Utwórz. Nazwa sridu, ścieżka /volume1/docker/sridu, źródło „Użyj istniejącego pliku docker-compose.yml”. Pomiń portal WWW, potem Gotowe. Pierwsze budowanie trwa kilka minut.
  5. Graj: na samym NAS-ie nikt nie gra, więc otwórz https://<IP NAS-a>:8443 na komputerze przy tarczy i na każdym innym urządzeniu.

Konfiguracja strony administracyjnej

  1. Otwórz stronę administracyjną pod http://<IP NAS-a>:8090/admin/. Otwiera się tylko z sieci domowej, więc używaj adresu IP, nie nazwy domeny.
  2. Wpisz kod konfiguracji. Wygląda tak: ABCD-EFGH-JKLM. Najłatwiej znaleźć go w pliku SETUP-CODE.txt w folderze server/admin twojego folderu Sridu. Jest też w logu kontenera sridu-api: Container Manager, Kontener, sridu-api, Log.
  3. Wybierz hasło. Od teraz logujesz się nim. Kod konfiguracji nie jest już potrzebny. Co robi każda zakładka, wyjaśnia przewodnik po stronie administracyjnej.

Unraid

  1. Zainstaluj „Docker Compose Manager” z Apps (Community Applications). Daje polecenie docker compose.
  2. Otwórz terminal (ikona >_ w prawym górnym rogu) i pobierz Sridu do appdata:
mkdir -p /mnt/user/appdata && cd /mnt/user/appdata
wget https://sridu.com/wp-content/themes/sridu/assets/download/sridu-latest.zip
unzip -q sridu-latest.zip -d sridu && rm sridu-latest.zip
cd sridu
  1. Zmień dwa ustawienia: nano docker-compose.yml. Wpisz adres IP serwera w SRIDU_HOSTS, np. "192.168.1.20". Ustaw PUID: "99" i PGID: "100" (użytkownik nobody i grupa users w Unraid). Zapisz przez Ctrl+O, Enter, Ctrl+X.
  2. Uruchom. Pierwsze budowanie trwa kilka minut:
docker compose up -d --build
  1. Graj: otwórz https://<IP serwera>:8443 na komputerze przy tarczy i na każdym innym urządzeniu.

Konfiguracja strony administracyjnej

  1. Otwórz stronę administracyjną pod http://<IP serwera>:8090/admin/. Otwiera się tylko z sieci domowej, więc używaj adresu IP, nie nazwy domeny.
  2. Wpisz kod konfiguracji. Wygląda tak: ABCD-EFGH-JKLM. Najłatwiej znaleźć go w pliku SETUP-CODE.txt w folderze server/admin twojego folderu Sridu. Jest też w logu kontenera sridu-api: w zakładce Docker kliknij sridu-api, Logs, albo uruchom docker logs sridu-api.
  3. Wybierz hasło. Od teraz logujesz się nim. Kod konfiguracji nie jest już potrzebny. Co robi każda zakładka, wyjaśnia przewodnik po stronie administracyjnej.

Linux / Raspberry Pi

  1. Zainstaluj Dockera, jeśli jeszcze go nie ma, a potem wyloguj się i zaloguj ponownie:
curl -fsSL https://get.docker.com | sh
sudo usermod -aG docker $USER
  1. Pobierz Sridu:
mkdir -p ~ && cd ~
wget https://sridu.com/wp-content/themes/sridu/assets/download/sridu-latest.zip
unzip -q sridu-latest.zip -d sridu && rm sridu-latest.zip
cd sridu
  1. Zmień dwa ustawienia: nano docker-compose.yml. Wpisz adres IP maszyny w SRIDU_HOSTS (pokaże go hostname -I). Ustaw PUID i PGID na to, co pokazuje id, zwykle 1000 i 1000.
  2. Uruchom:
docker compose up -d --build
  1. Graj: http://localhost:8090 na tej maszynie, https://<IP>:8443 na każdym innym urządzeniu.

Konfiguracja strony administracyjnej

  1. Otwórz stronę administracyjną pod http://<IP>:8090/admin/. Otwiera się tylko z sieci domowej, więc używaj adresu IP, nie nazwy domeny.
  2. Wpisz kod konfiguracji. Wygląda tak: ABCD-EFGH-JKLM. Najłatwiej znaleźć go w pliku SETUP-CODE.txt w folderze server/admin twojego folderu Sridu. Jest też w logu kontenera sridu-api: docker logs sridu-api.
  3. Wybierz hasło. Od teraz logujesz się nim. Kod konfiguracji nie jest już potrzebny. Co robi każda zakładka, wyjaśnia przewodnik po stronie administracyjnej.

Windows / Mac

  1. Zainstaluj Docker Desktop ze strony docker.com i uruchom go.
  2. Pobierz Sridu (sridu-latest.zip) i rozpakuj, np. do folderu Dokumenty.
  3. Zmień jedno ustawienie: otwórz docker-compose.yml w edytorze tekstu i wpisz adres IP tego komputera w SRIDU_HOSTS (Windows: ipconfig, Mac: Ustawienia systemowe, Sieć). PUID i PGID mogą zostać bez zmian.
  4. Uruchom: otwórz terminal w folderze (Windows: prawy przycisk, „Otwórz w terminalu”; Mac: Usługi, „Nowy terminal w folderze”) i wykonaj:
docker compose up -d --build
  1. Graj: http://localhost:8090 na tym komputerze, https://<IP>:8443 na każdym innym urządzeniu.

Konfiguracja strony administracyjnej

  1. Otwórz stronę administracyjną pod http://localhost:8090/admin/. Otwiera się tylko z sieci domowej, więc używaj adresu IP, nie nazwy domeny.
  2. Wpisz kod konfiguracji. Wygląda tak: ABCD-EFGH-JKLM. Najłatwiej znaleźć go w pliku SETUP-CODE.txt w folderze server/admin twojego folderu Sridu. Jest też w logu kontenera sridu-api: Docker Desktop, Containers, sridu-api, Logs.
  3. Wybierz hasło. Od teraz logujesz się nim. Kod konfiguracji nie jest już potrzebny. Co robi każda zakładka, wyjaśnia przewodnik po stronie administracyjnej.

Przeglądarka ostrzega przed certyfikatem przy pierwszym otwarciu https://…:8443. Tak ma być: certyfikat pochodzi z twojego własnego serwera, a nie od urzędu certyfikacji. Kliknij „Zaawansowane” i „Przejdź”. Wystarczy raz na urządzenie.

Serwer publiczny

Własne Sridu na własnej domenie, dla klubu albo znajomych z dowolnego miejsca. Działa w Dockerze na maszynie, która jest zawsze włączona, a coś przed nim zajmuje się https. W domu to zwykle Cloudflare Tunnel, na wynajętym serwerze reverse proxy.

Graczedarts.twoj-klub.pl httpstunel lub proxy Twój serwerSridu, port 8110strona admin.tylko stąd Twój komputersieć domowa lub SSH

Czego potrzebujesz

  • Maszyny działającej bez przerwy z Dockerem: NAS-a albo mini PC w domu, albo wynajętego serwera (VPS) u dowolnego dostawcy hostingu.
  • Domeny lub subdomeny, dla której możesz ustawiać rekordy DNS, np. darts.twoj-klub.pl.
  • https przed Sridu: w domu Cloudflare Tunnel (darmowy plan wystarczy, a na routerze nie otwierasz żadnego portu), na wynajętym serwerze reverse proxy, np. Caddy, nginx lub Traefik.

Krok po kroku

  1. Wgraj Sridu na maszynę jak w zakładce Docker (na wynajętym serwerze jak w części Linux), ale jeszcze go nie uruchamiaj.
  2. Otwórz deploy/public/docker-compose.yml i zmień te ustawienia: swoją domenę w SRIDU_DOMAIN, SRIDU_LOBBY_GUESTS: "off" (chyba że chcesz być otwartym lobby dla wszystkich), SRIDU_BUG_INBOX: "off", SRIDU_CF_ANALYTICS: "off" (chyba że sam włączysz Cloudflare Web Analytics) oraz PUID/PGID odpowiednio do swojego systemu.

Dalej w zależności od tego, gdzie działa serwer:

W domu: Cloudflare Tunnel

  1. Utwórz projekt z folderu deploy/public (Synology: ścieżka /volume1/docker/sridu/deploy/public; terminal: cd deploy/public && docker compose up -d --build).
  2. Utwórz tunel: przenieś domenę do Cloudflare (darmowy plan wystarczy), potem w Zero Trust w sekcji Networks, Tunnels utwórz tunel i uruchom jego cloudflared na NAS-ie, tak jak pokazuje Cloudflare.
  3. Podłącz domenę: w tunelu dodaj publiczną nazwę hosta. Subdomena i domena jak w SRIDU_DOMAIN, typ HTTP, URL <IP NAS-a>:8110.
  4. Przetestuj: twoja domena powinna teraz pokazywać Sridu.
  5. Otwórz stronę administracyjną na komputerze w sieci domowej pod http://<IP NAS-a>:8110/admin/, z adresem IP NAS-a, a nie domeną.

Wynajęty serwer: reverse proxy

  1. Nie wystawiaj portu: w docker-compose.yml zmień port usługi web z "8110:8080" na "127.0.0.1:8110:8080". Wtedy do Sridu dociera tylko proxy na tym samym serwerze, a nie internet.
  2. Uruchom: cd deploy/public && docker compose up -d --build.
  3. Skieruj domenę na serwer: rekord A (i AAAA dla IPv6) z adresem IP serwera u twojego dostawcy DNS.
  4. Skonfiguruj proxy. W Caddy wystarczą dwie linie w Caddyfile, a Caddy sam pobierze certyfikat: darts.your-club.com i pod spodem reverse_proxy 127.0.0.1:8110. W nginx, Traefik lub Nginx Proxy Manager przekieruj ruch na 127.0.0.1:8110 z włączonymi WebSocketami i nagłówkami X-Forwarded-For oraz X-Forwarded-Proto.
  5. Przetestuj: twoja domena powinna teraz pokazywać Sridu.
  6. Otwórz stronę administracyjną przez tunel SSH. Na swoim komputerze uruchom ssh -L 8110:127.0.0.1:8110 you@your-server i zostaw go otwartego, a potem otwórz w przeglądarce http://localhost:8110/admin/. Dla Sridu jesteś wtedy na samym serwerze, więc strona się otworzy.

Konfiguracja strony administracyjnej

Strona administracyjna nigdy nie otwiera się przez twoją domenę. your-domain/admin celowo nic nie pokazuje: nikt w internecie nie powinien nawet zobaczyć logowania. Otwórz ją tak, jak opisano w twojej zakładce powyżej, z sieci domowej albo przez tunel SSH. Jeśli naprawdę chcesz mieć do niej dostęp przez domenę, ustaw SRIDU_ADMIN_REMOTE: "on" i wybierz długie hasło. Jeszcze bezpieczniejsza jest kontrola dostępu przed nią, np. Cloudflare Access.

  1. Wpisz kod konfiguracji. Wygląda tak: ABCD-EFGH-JKLM. Najłatwiej znaleźć go w pliku SETUP-CODE.txt w folderze deploy/public/data twojego folderu Sridu. Jest też w logu kontenera sridu-public-api-1 (Synology: Container Manager, Kontener, Log; terminal: docker logs sridu-public-api-1).
  2. Wybierz hasło. Od teraz logujesz się nim. Kod konfiguracji nie jest już potrzebny. Co robi każda zakładka, wyjaśnia przewodnik po stronie administracyjnej.

Hostujesz dla innych osób w Niemczech lub UE? Wtedy potrzebujesz impressum i polityki prywatności. Wpisz oba na stronie administracyjnej w sekcji „Legal”, a aplikacja podlinkuje je na dole strony startowej.

Mecze online nie łączą się w niektórych sieciach (opcjonalny przekaźnik)

Dane komórkowe i niektóre routery nie pozwalają na bezpośrednie połączenia między dwiema tarczami. Przekaźnik (TURN) przekazuje dalej zaszyfrowany ruch. Cloudflare Tunnel go nie przenosi, więc potrzebne są otwarte porty: UDP 3478, UDP 31000–31040 i TCP 3478, w domu przekierowane na routerze do NAS-a, na wynajętym serwerze dozwolone w jego zaporze. Kroki są w komentarzach usługi relay w docker-compose.yml. Uruchom ją poleceniem docker compose --profile relay up -d.

Hosting WWW

Sridu nie potrzebuje własnego serwera, więc wystarczy dowolny hosting WWW, który serwuje pliki. To darmowe i szybkie. Z czego rezygnujesz: strony administracyjnej, własnego lobby (gracze spotykają się wtedy przez serwery publiczne) i rankingu online. Nazwa, kolory, tryby gry i ustawienia startowe nadal działają, dzięki konfiguratorowi.

Cloudflare Pages

  1. Pobierz Sridu (sridu-latest.zip) i nie rozpakowuj go.
  2. W panelu Cloudflare: Workers & Pages, Create, Pages, „Upload assets”.
  3. Nadaj nazwę i przeciągnij sam plik ZIP do pola wysyłania. Deploy. Rozpakowany folder nie zadziała: z plikami głosów ma około 1000 plików, więcej, niż panel przyjmuje w jednym wysłaniu.
  4. Gotowe: Sridu działa pod <name>.pages.dev. W sekcji Custom domains możesz dodać własną domenę.

Netlify

  1. Pobierz i rozpakuj Sridu (sridu-latest.zip).
  2. Otwórz app.netlify.com/drop i przeciągnij rozpakowany folder na stronę.
  3. Gotowe: Netlify pokaże adres. Zarejestruj się (za darmo), jeśli chcesz zachować stronę.

GitHub Pages

  1. Utwórz nowe, puste repozytorium na GitHubie.
  2. Wgraj do niego Sridu z terminala. Wysyłanie w przeglądarce przyjmuje tylko 100 plików naraz, a Sridu ma ich około 1000: git clone https://github.com/<name>/<repository>.git, potem cd <repository>, pobierz do niego sridu-latest.zip, unzip -q sridu-latest.zip && rm sridu-latest.zip, git add -A, git commit -m "Sridu", git push.
  3. Włącz Pages: Settings, Pages, źródło „Deploy from a branch”, gałąź main, folder / (root).
  4. Gotowe: po minucie Sridu działa pod <name>.github.io/<repository>.

Twoje ustawienia bez Dockera: konfigurator

Kopia na hostingu WWW nie ma strony administracyjnej, ale nadal może nosić nazwę i kolory twojego klubu, powitanie, ogłoszenie, wybór trybów gry i ustawienia startowe dla nowych urządzeń. Aplikacja odczytuje je z pliku config.json obok index.html. Konfigurator w folderze aplikacji tworzy ten plik za ciebie.

  1. Otwórz config.html Jest dołączony do Sridu, obok index.html. Po wgraniu otwórz https://<twój adres>/config.html. Jeśli config.json już tam jest, jego wartości zostaną wczytane.
  2. Przejdź przez sekcje General, Look & welcome, Customise the app, Online i Legal. Wszystko, czego nie ruszysz, zachowuje wartość domyślną. Twoje zmiany są przechowywane w tej przeglądarce, dopóki ich nie pobierzesz.
  3. Pobierz config.json Przycisk jest w prawym górnym rogu. Plik powstaje w twojej przeglądarce, nic nie jest nigdzie wysyłane.
  4. Umieść go obok index.html Wgraj folder ponownie i przeładuj aplikację. Urządzenia, które już ją znają, pobiorą zmianę przy następnym uruchomieniu.
GdzieJak plik tam trafia
Cloudflare PagesRozpakuj Sridu, umieść config.json obok index.html, zaznacz wszystko w folderze i spakuj do nowego pliku ZIP (pliki, nie folder wokół nich). Wgraj ten ZIP w panelu przez „Create deployment”. Przy wrangler pages deploy umieść plik w folderze.
Hosting WWW (FTP)Wgraj go programem FTP do tego samego folderu co index.html.
Web Station na NAS-ieSkopiuj go do folderu Web Station obok index.html (Synology: folder udostępniony web, QNAP: Web), przez File Station albo przez sieć.
Twój własny komputerObok index.html w folderze, który serwujesz, np. poleceniem python3 -m http.server.
  • LogoPlik obok index.html, np. logo.png, adres https albo mały obrazek do 100 KB, który trafia prosto do config.json.
  • LobbyBez własnego serwera gracze spotykają się bez serwera przez publiczne brokery albo w lobby online Sridu na play.sridu.com.
  • Impressum i polityka prywatnościLink do strony na twojej witrynie albo sam tekst w config.json.
  • Bez plikuTo też jest w porządku. Aplikacja zachowuje się wtedy tak jak zawsze.

Co wymaga Dockera: wspólny ranking, dane graczy na serwerze, własne lobby z moderacją i własnym brokerem, dane o użyciu oraz strona administracyjna z hasłem, wgrywaniem logo i kopią zapasową. Do tego wybierz Docker w domu albo serwer publiczny.

Prowadzenie serwera

Po instalacji

Wszystko, czego potrzebujesz później, dla Dockera w domu i serwera publicznego.

Przegapiłem kod konfiguracji

Otwórz plik SETUP-CODE.txt w folderze danych serwera: Docker w domu server/admin/, serwer publiczny deploy/public/data/. Zostaje tam, dopóki nie ustawisz hasła. Nie ma tam pliku? Wtedy usługa administracyjna jeszcze nie wystartowała: poszukaj błędu w logu projektu albo uruchom go ponownie.

Zapomniałem hasła administratora

Usuń plik admin.json z folderu danych serwera i uruchom projekt ponownie. W logu pojawi się nowy kod konfiguracji, a ty wybierzesz nowe hasło. Ustawienia, ranking i teksty zostają zachowane.

Gdzie jest folder: Docker w domu server/admin/, serwer publiczny deploy/public/data/.

Gdzie są moje dane i jak zrobić kopię zapasową?

Wszystko jest w zwykłych folderach obok docker-compose.yml. Docker w domu: data/ (dane graczy z każdej przeglądarki) i server/ (administracja, ranking, certyfikat). Serwer publiczny: deploy/public/data/. Aby zrobić kopię zapasową, skopiuj te foldery albo dodaj je do swojego narzędzia do kopii (Hyper Backup, Unraid appdata backup).

Przeprowadzka na inny serwer

Zatrzymaj projekt, skopiuj cały folder Sridu razem z folderami danych na nową maszynę, popraw adres IP w SRIDU_HOSTS, jeśli się zmienił, i utwórz tam projekt. Wszystko wraca: gracze, ranking, hasło.

Zmiana ustawienia

Otwórz docker-compose.yml, zmień wartość, zapisz i uruchom projekt ponownie (Synology: Projekt, Akcja, Uruchom ponownie; terminal: docker compose up -d). Wiele ustawień możesz też zmienić na stronie administracyjnej, bez ponownego uruchamiania.

Aktualizacja do nowej wersji

Co przynosi nowa wersja, znajdziesz w liście zmian. Najprościej jest skorzystać z zakładki Update na stronie administracyjnej: buduje nową wersję, podczas gdy stara nadal działa, a potem podmienia kontenery. Gracze zauważą przerwę co najwyżej kilku sekund.

  • Rebuild, zawsze dostępne: pobierz sridu-latest.zip, rozpakuj go na swój folder i zachowaj swój docker-compose.yml oraz foldery danych. Potem naciśnij Rebuild na stronie administracyjnej.
  • Pobierz i zaktualizuj, jeśli to włączysz: w docker-compose.yml, w usłudze updater, ustaw SRIDU_UPDATE_DOWNLOAD na "on", a potem raz wykonaj docker compose up -d. Od tej chwili strona administracyjna pokazuje, gdy wyjdzie nowa wersja, i instaluje ją jednym kliknięciem. Twoje pliki compose, ustawienia i dane zostają bez zmian, a Back to the previous version przywraca stare pliki.
  • Bez updatera: rozpakuj jak wyżej, a potem przebuduj ręcznie (Synology: Projekt, Akcja, Zbuduj; terminal: docker compose up -d --build). Starsza instalacja dostaje updater w ten sam sposób jednorazowo: zakładka Update pokazuje linie do dodania w docker-compose.yml.

Nowe ustawienia danego wydania są w docker-compose.yml wewnątrz pliku ZIP. Przenieś te, których chcesz.

Port jest już zajęty

Inny program używa już portu 8090, 8443 lub 8110. W docker-compose.yml w sekcji ports zmień liczbę po lewej, np. na "8091:8080", i używaj nowej liczby w adresie.

Po co PUID i PGID?

Określają, który użytkownik jest właścicielem folderów danych. Z własnym użytkownikiem możesz je otwierać, kopiować i archiwizować bez problemów z uprawnieniami. Synology: 1026 i 100. Unraid: 99 i 100. Inny Linux: to, co pokazuje id. Docker Desktop w Windows i na Macu: działa dowolna wartość.

Dokumentacja

Wszystkie ustawienia

Wszystkie ustawienia są na górze docker-compose.yml. Zmień wartość, a potem uruchom projekt ponownie. Wiele z nich możesz też ustawić na stronie administracyjnej, która ma wtedy pierwszeństwo. Dwie kolumny pokazują wartość domyślną dla Dockera w domu i dla serwera publicznego.

Serwer

UstawienieDomPublicznyCo robi
SRIDU_HOSTSpustepusteAdresy IP lub nazwy maszyny dla certyfikatu https, rozdzielone przecinkami. Ustaw przed pierwszym uruchomieniem.
SRIDU_DOMAINnd.twoja domenaSerwer odpowiada tylko pod tą nazwą i pod adresami lokalnymi.
SRIDU_ADMIN_REMOTEnd.offon = strona administracyjna otwiera się też przez twoją domenę, z dowolnego miejsca. Tylko z długim hasłem; tunel SSH jest bezpieczniejszy.
SRIDU_LANGautoautoJęzyk, w którym wszyscy zaczynają: auto (język przeglądarki) albo en, de, nl, fr, es, it, pt-BR, pl, hr.
SRIDU_INDEXnd.onon: wyszukiwarki mogą indeksować aplikację.
SRIDU_ADMIN_REMOTEnd.offon: strona administracyjna dostępna także spoza sieci domowej. Niezalecane.
SRIDU_CF_ANALYTICSoffoffon: pozwala załadować skrypt Cloudflare Web Analytics (polityka bezpieczeństwa). Tylko jeśli włączyłeś Web Analytics dla swojej domeny w Cloudflare; wtedy wymień to w swojej polityce prywatności.
SRIDU_NAMEpustepusteNazwa instalacji na karcie przeglądarki i na stronie startowej, np. DC Bullseye. Puste: Sridu. Logo, tekst powitalny i więcej znajdziesz na stronie administracyjnej w sekcji Look & welcome.
SRIDU_ACCENTpustepusteKolor akcentu jako #rrggbb, np. #e11d48. Puste: zieleń Sridu.
SRIDU_COUNTERSononDane o użyciu do przeglądu na stronie administracyjnej: uruchomienia aplikacji, zakończone mecze, lotki i tryby gry dziennie. Tylko sumy, bez plików cookie, identyfikatorów urządzeń, nazw i adresów.
SRIDU_PACKSonoffBiblioteka pakietów dźwięków: aplikacje tego serwera mogą tu udostępniać swoje własne dźwięki i głosy spikera i instalować pakiety innych. off: nic nie jest przechowywane na serwerze, a aplikacja nie pokazuje biblioteki. Kto może udostępniać i jak duży może być pakiet, ustawiasz na stronie administracyjnej w sekcji Sound packs.
SRIDU_UPDATE_CHECKononCo sześć godzin oraz przy otwarciu strony administracyjnej serwer pyta sridu.com, czy jest nowsza wersja, a strona administracyjna ją wtedy pokazuje (Update). Zwykłe zapytanie bez plików cookie i identyfikatora; nic nie jest pobierane ani instalowane. off: bez sprawdzania.
PUID / PGID1000 / 10001026 / 100Użytkownik i grupa, do których należą foldery danych.

Lobby

UstawienieDomPublicznyCo robi
SRIDU_LOBBYononOtwarty czat do szukania przeciwników.
SRIDU_LOBBY_MODElocallocallocal: lobby tego serwera. online: lobby online Sridu na play.sridu.com, razem ze wszystkimi tam obecnymi (inny serwer przez SRIDU_LOBBY_ONLINE_URL). mesh: bez serwera, przez brokery.
SRIDU_LOBBY_GUESTSnd.onon: aplikacje z innych instalacji mogą dołączać do tego lobby. play.sridu.com tego potrzebuje; na własnym serwerze zwykle off.
SRIDU_LOBBY_ROOMSoneoneone: jeden pokój dla wszystkich. lang: jeden pokój na każdy język aplikacji.
SRIDU_LOBBY_MAXnd.2000Najwyżej tylu graczy online jednocześnie.
SRIDU_LOBBY_PER_IPnd.30Najwyżej tyle połączeń z lobby z jednego adresu IP. Adres IPv6 liczy się według swojego bloku /64.
SRIDU_CHAT_HISTORYnd.50Linie czatu przechowywane w pamięci dla nowo przybyłych. Nigdy nie są zapisywane na dysku.
SRIDU_REPORTSononon: gracze mogą zgłaszać osoby i wiadomości w lobby, a ty widzisz zgłoszenia na stronie administracyjnej. Nie ma tego w pliku; dodaj linię, aby to wyłączyć, albo użyj strony administracyjnej.

Gra i ranking

UstawienieDomPublicznyCo robi
SRIDU_CORRECT_CHALLENGESonoffCzy gracze mogą poprawiać lotki w wyzwaniach godzinnych? Na serwerze publicznym off: liczy się to, co zobaczyły kamery.
SRIDU_CORRECT_MINISonoffTo samo dla treningów i gier rozgrzewkowych, czyli wszystkiego z rekordami. Gry imprezowe zawsze można poprawiać.
SRIDU_JOIN_APPROVALoffonon: urządzenie spoza sieci gospodarza pyta, zanim dołączy do sesji.
SRIDU_BOARDononRanking wyzwań godzinnych.
SRIDU_BOARD_STRICToffonon: liczą się tylko lotki zobaczone przez kamery, bez poprawek i bez wpisywania.
SRIDU_BOARD_TRAININGononGry treningowe liczą się w rankingu online. off: ich rekordy zostają na urządzeniu.
SRIDU_BOARD_WARMUPononTo samo dla gier rozgrzewkowych.
SRIDU_PROGRESSoffonon: poziom gracza, odznaki z informacjami w grze, cele dnia i wyglądy do odblokowania (Poziomy i odznaki).
SRIDU_PROGRESS_DAILYononTrzy cele dnia, tylko z SRIDU_PROGRESS.
SRIDU_PROGRESS_UNLOCKSononWyglądy do odblokowania, tylko z SRIDU_PROGRESS.
SRIDU_BOARD_DAYS9090Wyniki są usuwane po tylu dniach (co najmniej 35).

Zgłoszenia problemów

UstawienieDomPublicznyCo robi
SRIDU_BUG_REPORTSononon: gracze mogą wysłać zgłoszenie problemu prosto do twórców Sridu (play.sridu.com). off: tylko e-mailem albo jako zapisany plik.
SRIDU_BUG_INBOXoffonOdbiera zgłoszenia ze wszystkich instalacji. Tylko dla play.sridu.com; na własnym serwerze ustaw off.
SRIDU_BUG_DAYSnd.90Odebrane zgłoszenia są usuwane po tylu dniach (7–365).

Mecze online

UstawienieDomPublicznyCo robi
SRIDU_BROKERononWłasny broker łączy urządzenia do meczów online.
SRIDU_PUBLIC_BROKERSonoffon: publiczne serwery MQTT pomagają, gdy twój własny jest nieosiągalny.
SRIDU_STUNpuste (Google i Cloudflare)CloudflareGdzie urządzenie poznaje swój publiczny adres do połączenia bezpośredniego.
SRIDU_TURN_HOSTpustepustePubliczna nazwa twojego przekaźnika. Puste: bez przekaźnika.
SRIDU_TURN_PORT34783478Port przekaźnika.
SRIDU_TURN_URLSpustepusteHostowana usługa TURN zamiast własnego przekaźnika.
SRIDU_TURN_USER / _PASSsridu / pustesridu / pusteLogin przekaźnika. Widoczny dla każdego odwiedzającego, służy tylko do odcięcia obcych aplikacji.

Porównanie

Cztery sposoby obok siebie

Same plikiDocker w domuSerwer publicznyHosting WWW
Kamery, wszystkie tryby gry, statystykiTakTakTakTak
Telefony i tablety w sieciNieTakTakTak
Mecze onlinePrzez serwery publiczneTakTakPrzez serwery publiczne
Strona administracyjnaNieTakTakNie, zamiast niej konfigurator
Własne lobby i rankingNieTakTakNie
Dostępne z internetuNieNieTakTak
Nakład pracy5 minut15 minutJeden wieczór10 minut

Licencja: własny serwer jest darmowy dla ciebie w domu i dla twojego klubu. Pub, wydarzenie publiczne albo cokolwiek komercyjnego wymaga najpierw kontaktu, zobacz kto może co robić.