Sync-in Server: open-source’owa platforma do przechowywania i synchronizacji plików (instalacja Docker)

Samodzielnie hostowana alternatywa dla Nextcloud i Dropboxa — funkcje, architektura, bezpieczeństwo i instalacja krok po kroku

Sync-in to otwartoźródłowa (open-source), samodzielnie hostowana (self-hosted) platforma do przechowywania plików, ich synchronizacji, współdzielenia i wspólnej edycji dokumentów. Projekt dostępny jest na GitHubie pod adresem github.com/Sync-in/server i jest oficjalnie wsparcie przez Docker-Sponsored Open Source Program.

 

Bezpłatne warsztaty: Zbuduj 5 Agentów AI
Sprawdź szczegóły:

Spis treści

  1. Czym jest Sync-in Server?
  2. Dla kogo jest Sync-in?
  3. Kluczowe funkcje Sync-in
  4. Sync-in vs Nextcloud vs Dropbox — czym się wyróżnia
  5. Architektura i stos technologiczny
  6. Wymagania sprzętowe i programowe
  7. Instalacja Sync-in za pomocą Docker Compose — przewodnik krok po kroku
    • Krok 1: Pobranie plików konfiguracyjnych
    • Krok 2: Konfiguracja sekretów i haseł
    • Krok 3: Konfiguracja przechowywania danych
    • Krok 4: Uruchomienie serwera
    • Krok 5: Pierwsze logowanie
  8. Konfiguracja reverse proxy (HTTPS, domena)
  9. Integracja z Collabora Online i OnlyOffice
  10. Klient desktopowy i CLI
  11. Zarządzanie i aktualizacje kontenera
  12. Najczęściej zadawane pytania (FAQ)
  13. Podsumowanie

1. Czym jest Sync-in Server?

Sync-in to nowoczesna, w pełni otwartoźródłowa platforma klasy file storage & collaboration, którą można postawić na własnej infrastrukturze — serwerze domowym, VPS-ie, w chmurze prywatnej lub w środowisku korporacyjnym. Repozytorium backendu i frontendu (napisane głównie w TypeScript) jest publicznie dostępne na GitHubie: Sync-in/server.

Projekt pozycjonuje się jako narzędzie zapewniające cyfrową suwerenność (digital sovereignty) — czyli pełną kontrolę nad tym, gdzie fizycznie znajdują się dane, kto ma do nich dostęp i jak są zabezpieczone. To odpowiedź na rosnące zapotrzebowanie firm, instytucji publicznych oraz świadomych prywatności użytkowników na alternatywy dla komercyjnych usług chmurowych typu Dropbox, Google Drive czy Microsoft OneDrive.

Repozytorium ma status projektu aktywnie rozwijanego — ponad 700 commitów, cykliczne wydania (aktualnie v2.3.0), licencję AGPL-3.0-or-later oraz społeczność skupioną wokół Discorda i GitHub Discussions.


2. Dla kogo jest Sync-in?

  • Administratorzy IT i entuzjaści homelabu — szukający lekkiej, kontenerowej alternatywy dla Nextcloud.
  • Małe i średnie firmy — potrzebujące bezpiecznego udostępniania plików z kontrolą dostępu opartą na rolach (RBAC).
  • Instytucje publiczne i sektor regulowany — dla których kluczowa jest zgodność z wymogami suwerenności danych (np. RODO/GDPR) i możliwość hostowania on-premise.
  • Twórcy dokumentów wymagający wspólnej edycji — dzięki wbudowanej integracji z Collabora Online i OnlyOffice.

3. Kluczowe funkcje Sync-in

Poniżej pełny zestaw funkcji udokumentowanych w oficjalnym repozytorium:

Nowoczesny i wydajny interfejs

Responsywny, szybki interfejs webowy zoptymalizowany pod kątem produktywności na różnych urządzeniach.

Nowoczesna tożsamość i uwierzytelnianie

  • OpenID Connect (OIDC) — federacyjne uwierzytelnianie i Single Sign-On (SSO).
  • Uwierzytelnianie wieloskładnikowe (MFA), kody odzyskiwania i hasła aplikacji.
  • Jednolite uwierzytelnianie dla klientów Web, Desktop i CLI.

Zaawansowana kontrola dostępu użytkowników

  • Przestrzenie (Spaces) i udostępnienia (Shares) z granularnymi uprawnieniami.
  • Kontrola dostępu oparta na rolach (RBAC) dla bezpiecznej współpracy zespołowej.

Wspólna edycja dokumentów

  • Integracja z Collabora Online oraz OnlyOffice.
  • Obsługa wielu edytorów z automatycznym wyborem odpowiedniego narzędzia.
  • Komentarze, powiadomienia i śledzenie aktywności plików.

Zaawansowane wyszukiwanie pełnotekstowe

Głębokie indeksowanie treści dokumentów oraz wsparcie dla wielu formatów plików.

Zarządzanie dokumentami i ochrona plików

Limity (quoty) przestrzeni dyskowej, blokowanie plików oraz bezpieczne, kontrolowane środowiska udostępniania.

Suwerenność i pełna kontrola infrastruktury

Możliwość wdrożenia on-premise lub w chmurze prywatnej, oparta na otwartych i interoperacyjnych standardach.

Dostęp WebDAV

Natywne wsparcie WebDAV umożliwiające zdalny dostęp do plików i integrację z menedżerami plików oraz narzędziami trzecimi.

Klient desktopowy

Pełnoprawna aplikacja desktopowa (Sync-in/desktop) ze wsparciem synchronizacji między urządzeniami i obsługą wielu serwerów jednocześnie.


4. Sync-in vs Nextcloud vs Dropbox — czym się wyróżnia

KryteriumSync-inNextcloudDropbox
ModelOpen-source, self-hostedOpen-source, self-hostedZamknięte, chmura komercyjna
LicencjaAGPL-3.0AGPL-3.0Własnościowa
Instalacja DockerOficjalny obraz + gotowy docker-composeOficjalny obraz, bardziej rozbudowana konfiguracjaBrak (SaaS)
SSO / OIDC / LDAPTak, natywnie wbudowaneTak, poprzez aplikacje/dodatkiOgraniczone (plan Enterprise)
Współedycja dokumentówCollabora Online, OnlyOfficeCollabora Online, OnlyOfficeWłasny edytor Paper
WebDAVTakTakNie natywnie
Kontrola nad danymiPełna (self-hosted)Pełna (self-hosted)Brak (dane u dostawcy)
Ekosystem wtyczekRozwijający się, młodszy projektBardzo rozbudowanyZamknięty

Sync-in jest projektem młodszym niż Nextcloud, ale wyróżnia się lżejszą architekturą, nowoczesnym stosem technologicznym (TypeScript, kontenery Docker z użyciem rozszerzenia x-include) oraz uproszczonym procesem wdrożenia — cała konfiguracja produkcyjna zamyka się w kilku plikach YAML.


5. Architektura i stos technologiczny

Repozytorium Sync-in/server łączy backend i frontend w jednym monorepo:

  • Backend — logika serwera, API, obsługa uwierzytelniania, WebDAV, wyszukiwania pełnotekstowego.
  • Frontend — interfejs webowy (TypeScript, HTML, SCSS).
  • Baza danych — MySQL/MariaDB jako podstawowy magazyn metadanych.
  • Docker — oficjalny obraz publikowany na Docker Hub: syncin/server.
  • NPM — alternatywna metoda instalacji poprzez pakiet @sync-in/server.

Struktura projektu (repozytorium GitHub) obejmuje katalogi backend/, frontend/, docker/, environment/ oraz scripts/, co odzwierciedla podejście „monorepo” typowe dla nowoczesnych aplikacji full-stack.


6. Wymagania sprzętowe i programowe

Zanim przejdziesz do instalacji, upewnij się, że Twoje środowisko spełnia minimalne wymagania.

Minimalne wymagania sprzętowe:

ZasóbMinimum
RAM1 GB
CPU1 rdzeń / vCPU
Przestrzeń dyskowa2 GB

Wymagania programowe:

  • Docker Engine w wersji 24 lub nowszej
  • Docker Compose w wersji 2.20 lub nowszej (wymagane ze względu na użycie rozszerzenia x-include w plikach Compose)

Sprawdź zainstalowane wersje poleceniami:

docker --version
docker compose version

Jeśli Docker nie jest jeszcze zainstalowany, skorzystaj z oficjalnego przewodnika instalacji Dockera.


7. Instalacja Sync-in za pomocą Docker Compose — przewodnik krok po kroku

Poniższa instrukcja bazuje na oficjalnej dokumentacji Sync-in i prowadzi przez pełny proces wdrożenia produkcyjnego przy użyciu Docker Compose.

Krok 1: Pobranie plików konfiguracyjnych {#krok-1-pobranie-plikow}

Pliki konfiguracyjne Docker Compose (paczka sync-in-docker) są publikowane w sekcji Releases repozytorium. Możesz je pobrać na dwa sposoby.

Opcja A — curl + unzip:

curl -L -o sync-in-docker.zip \
  https://github.com/Sync-in/server/releases/latest/download/sync-in-docker.zip && \
  unzip sync-in-docker.zip

Opcja B — curl + tar:

curl -L -o sync-in-docker.tar.gz \
  https://github.com/Sync-in/server/releases/latest/download/sync-in-docker.tar.gz && \
  tar zxvf sync-in-docker.tar.gz

Po rozpakowaniu w katalogu sync-in-docker powinieneś zobaczyć następującą strukturę:

├── config
│   ├── collabora
│   │   └── docker-compose.collabora.yaml
│   ├── nginx
│   │   ├── collabora.conf
│   │   ├── docker-compose.nginx.yaml
│   │   ├── nginx.conf
│   │   ├── onlyoffice.conf
│   │   └── eurooffice.conf
│   ├── onlyoffice
│   │   └── docker-compose.onlyoffice.yaml
│   ├── eurooffice
│   │   └── docker-compose.eurooffice.yaml
│   └── sync-in-desktop-releases
│       ├── docker-compose.sync-in-desktop-releases.yaml
│       └── update.sh
├── docker-compose.yaml
└── environment.yaml

Strukturę i zawartość tych plików możesz też przejrzeć bezpośrednio w katalogu docker/ repozytorium GitHub.

Przejdź do katalogu instalacyjnego:

cd sync-in-docker

Krok 2: Konfiguracja sekretów i haseł

Bezpieczeństwo: Przed uruchomieniem serwera koniecznie zamień domyślne sekrety na silne, losowo wygenerowane wartości.

Edytuj plik environment.yaml:

auth:
  encryptionKey: 'changeEncryptionKeyWithStrongKey'
  token:
    access:
      secret: 'changeAccessWithStrongSecret'
    refresh:
      secret: 'changeRefreshWithStrongSecret'
mysql:
  # Użyj hasła root zdefiniowanego w docker-compose.yaml
  url: 'mysql://root:MySQLRootPassword@mariadb:3306/sync_in'

Następnie zaktualizuj plik docker-compose.yaml, aby hasło do MySQL było spójne z powyższym:

services:
  mariadb:
    environment:
      MYSQL_ROOT_PASSWORD: 'MySQLRootPassword'

Wskazówki praktyczne:

  • Używaj długich, losowo generowanych ciągów znaków dla każdego sekretu.
  • W plikach YAML stosuj pojedyncze cudzysłowy dla haseł zawierających znaki specjalne.
  • Sekrety możesz alternatywnie ustawić poprzez zmienne środowiskowe — szczegóły znajdziesz w sekcji Variables & Secrets oficjalnej dokumentacji.

Krok 3: Konfiguracja przechowywania danych

Domyślnie docker-compose.yaml wykorzystuje nazwany wolumin Dockera data do przechowywania wszystkich danych aplikacji. Rozwiązanie to jest wystarczające do testów, ale w środowisku produkcyjnym zalecane jest zamontowanie katalogu z hosta.

Aby to zrobić, zamień wolumin Dockera na ścieżkę hosta:

services:
  sync_in:
    volumes:
      # Konfiguracja domyślna (wolumin Dockera)
      # - data:/app/data
      # Konfiguracja zalecana (katalog hosta)
      - '/home/sync-in/data:/app/data'

Krok 4: Uruchomienie serwera

Aby ustawić własne dane logowania administratora już przy pierwszym uruchomieniu, użyj:

INIT_ADMIN=true INIT_ADMIN_LOGIN='user' INIT_ADMIN_PASSWORD='password' docker compose up -d

Zamień user i password na własne, unikalne dane uwierzytelniające.

Jeśli nie ustawisz tych zmiennych i uruchomisz po prostu:

INIT_ADMIN=true docker compose up -d

serwer użyje domyślnych danych administratora:

  • Login: sync-in
  • Hasło: sync-in

Ważne: Ze względów bezpieczeństwa zdecydowanie zaleca się zmianę tych danych logowania zaraz po pierwszym zalogowaniu.

Status uruchomionych kontenerów możesz sprawdzić poleceniem:

docker compose ps

Krok 5: Pierwsze logowanie

Po uruchomieniu serwera otwórz przeglądarkę pod adresem:

http://localhost:8080

Zaloguj się przy użyciu danych administratora ustawionych w kroku 4.


8. Konfiguracja reverse proxy (HTTPS, domena)

Aby udostępnić Sync-in pod standardowymi portami HTTP/HTTPS (np. na własnej domenie z certyfikatem TLS), skorzystaj z dołączonej konfiguracji Nginx opisanej w Docker Reverse Proxy oficjalnej dokumentacji. Pliki docker-compose.nginx.yaml oraz gotowe konfiguracje (nginx.conf, collabora.conf, onlyoffice.conf, eurooffice.conf) znajdują się już w pobranej paczce sync-in-docker/config/nginx/.


9. Integracja z Collabora Online i OnlyOffice

Paczka instalacyjna zawiera gotowe, opcjonalne moduły Docker Compose do uruchomienia pakietów biurowych bezpośrednio obok Sync-in:

  • config/collabora/docker-compose.collabora.yaml — integracja z Collabora Online.
  • config/onlyoffice/docker-compose.onlyoffice.yaml — integracja z OnlyOffice.
  • config/eurooffice/docker-compose.eurooffice.yaml — integracja z EuroOffice.

Dzięki temu użytkownicy mogą wspólnie edytować dokumenty tekstowe, arkusze kalkulacyjne i prezentacje bezpośrednio w przeglądarce, bez opuszczania platformy Sync-in. Sync-in automatycznie wybiera odpowiedni edytor w zależności od typu pliku.


10. Klient desktopowy i CLI

Oprócz interfejsu webowego Sync-in oferuje osobne repozytorium Sync-in/desktop, zawierające pełnoprawną aplikację desktopową oraz narzędzie CLI. Kluczowe cechy:

  • Synchronizacja plików między wieloma urządzeniami.
  • Obsługa wielu serwerów z poziomu jednego klienta.
  • Jednolite, spójne uwierzytelnianie współdzielone z klientem webowym.

11. Zarządzanie i aktualizacje kontenera

Do typowych operacji administracyjnych po instalacji należą:

# Sprawdzenie statusu kontenerów
docker compose ps

# Podgląd logów serwera
docker compose logs -f sync_in

# Zatrzymanie usług
docker compose down

# Aktualizacja do najnowszej wersji obrazu
docker compose pull
docker compose up -d

Szczegółowe procedury operacyjne (kopie zapasowe, migracje, aktualizacje wersji) opisano w sekcji Operations oficjalnej dokumentacji.


12. Najczęściej zadawane pytania (FAQ)

Czy Sync-in jest darmowy?

Tak. Sync-in Server jest projektem open-source udostępnianym na licencji AGPL-3.0-or-later, co oznacza, że można go bezpłatnie pobrać, zainstalować i modyfikować, pod warunkiem zachowania zgodności z warunkami tej licencji.

Czy mogę zainstalować Sync-in bez Dockera?

Tak. Poza instalacją Docker Compose, Sync-in oferuje również metodę instalacji przez NPM — pakiet @sync-in/server, opisaną w sekcji Deploy with NPM dokumentacji.

Jaka baza danych jest wymagana?

Domyślna konfiguracja Docker Compose wykorzystuje MariaDB/MySQL jako magazyn metadanych aplikacji.

Czy Sync-in obsługuje logowanie jednokrotne (SSO)?

Tak, poprzez natywną integrację z OpenID Connect (OIDC) oraz LDAP, co czyni go odpowiednim dla środowisk korporacyjnych.

Czy da się edytować dokumenty Word/Excel bezpośrednio w przeglądarce?

Tak, dzięki integracji z Collabora Online i OnlyOffice, dostępnym jako opcjonalne moduły Docker Compose w paczce instalacyjnej.

Jakie są minimalne wymagania sprzętowe?

1 GB RAM, 1 rdzeń CPU i 2 GB przestrzeni dyskowej — Sync-in można uruchomić nawet na niewielkim VPS-ie lub Raspberry Pi klasy serwerowej.

Czym Sync-in różni się od Nextcloud?

Oba projekty są open-source i self-hosted, jednak Sync-in wyróżnia się nowocześniejszym, lżejszym stosem technologicznym (TypeScript) oraz uproszczoną, w pełni skonteneryzowaną instalacją opartą na gotowych plikach Docker Compose z rozszerzeniem x-include.

Gdzie zgłaszać błędy lub sugestie?

Poprzez GitHub Issues, GitHub Discussions lub serwer Discord projektu.


13. Podsumowanie

Sync-in Server to solidna, nowoczesna propozycja dla każdego, kto szuka self-hostowanej alternatywy dla komercyjnych chmur plikowych — bez konieczności rezygnowania z zaawansowanych funkcji takich jak SSO, LDAP, wspólna edycja dokumentów czy WebDAV. Dzięki oficjalnemu wsparciu Docker-Sponsored Open Source Program oraz gotowym paczkom Docker Compose, wdrożenie produkcyjnej instancji zajmuje dosłownie kilka minut.

Przydatne linki:


Artykuł oparty na oficjalnym repozytorium GitHub Sync-in/server oraz oficjalnej dokumentacji technicznej projektu (sync-in.com/docs). Stan na sierpień 2026 — najnowsze wydanie: v2.3.0.

 



Bezpłatne warsztaty: Zbuduj 5 Agentów AI

Sprawdź szczegóły:

https://asdevops.pl/warsztaty/

 

Bezpłatne warsztaty - Zbuduj 5 Agentów AI

X