Rozwiązanie społecznościowe

Uruchom serwer UrBackup w systemie ZimaOS: prawidłowe ścieżki, uprawnienia, sieć i pamięć masowa kopii zapasowych

An August 2025 source thread where UrBackup initially failed because of a China-only Docker mirror, invalid ZimaOS bind paths, permissions, port/launcher confusion, and container recreation issues. The original poster eventually reported a working Docker/Compose setup.

Instalacja UrBackup ze źródła nie powiodła się z kilku niezależnych powodów, zanim zaczęła działać: pobieranie obrazu zostało przepisane przez lustro dostępne wyłącznie w Chinach kontynentalnych, pierwsze ścieżki powiązań nie istniały na hoście ZimaOS, uprawnienia do katalogu kopii zapasowych były nieprawidłowe, a adres URL i porty launchera aplikacji wprowadzały w błąd.

Trwała lekcja jest taka, aby traktować UrBackup jak zwykłą stanową aplikację Dockera: używać rzeczywistych ścieżek magazynu na hoście, utrwalać zarówno dane kopii zapasowych, jak i bazę danych/stan UrBackup, weryfikować uprawnienia użytkownika środowiska uruchomieniowego oraz potwierdzać nasłuch WebUI i sieci przed poleganiem na nim przy tworzeniu kopii zapasowych klientów.

Okno dialogowe importu Docker CLI w ZimaOS zawierające oryginalne polecenie docker run dla UrBackup
Pierwsza próba używała ogólnych ścieżek hosta i napotkała problemy z obrazem oraz montowaniem, zanim użytkownik przebudował konfigurację.

Pierwsze pobranie obrazu zostało przepisane na nieużyteczne lustro

Demon zwrócił komunikat o odmowie pobrania dla docker.1panel.live/uroni/urbackup-server. Oficjalna strona pobierania UrBackup nadal wskazuje uroni/urbackup-server jako oficjalny obraz Dockera.

Zobacz aktualny oficjalny obraz Dockera UrBackup.

Powiązania woluminów muszą wskazywać rzeczywiste foldery hosta ZimaOS

Podsumowanie działającej konfiguracji wykorzystywało rzeczywisty magazyn w ścieżkach takich jak /media/Safe-Storage/UrBackup/backups i /media/Safe-Storage/UrBackup/data, zmapowane na /backups i /var/urbackup. Sprawdź rzeczywistą ścieżkę na hoście zamiast kopiować dosłownie nazwę magazynu ze źródła.

Odmowa dostępu oznacza, że użytkownik kontenera nie może zapisywać

Źródło napotkało Brak uprawnień do dostępu do „/backups/urbackup_tmp_files”. Jego poprawka używała określonego UID/GID oraz zgodnych właścicieli na hoście. Nie zakładaj na stałe 1000:100 jako uniwersalnej tożsamości; zweryfikuj bieżącego użytkownika środowiska uruchomieniowego.

Trwałe przechowywanie zarówno kopii zapasowych, jak i stanu UrBackup

Repozytorium zawiera dane kopii zapasowych klientów, a /var/urbackup zawiera bazę danych i stan serwera. Użyteczny plan odzyskiwania powinien zachować oba elementy, stosownie do potrzeb.

Źródło korzystało z sieci hosta

Utrzymywane uroni/urbackup-server image obecnie dokumentuje sieć hosta jako jeden z obsługiwanych wzorców Dockera i udostępnia standardowe porty usługi UrBackup. Sieć hosta upraszcza wykrywanie, ale usuwa izolację sieciową Dockera.

WebUI wymaga prawidłowego portu

Źródło poprawiło launcher ZimaOS na port 55414. Launcher jest tylko adresem URL ułatwiającym dostęp; rzeczywisty stan usługi należy sprawdzać w logach i nasłuchujących portach.

Ustawienia aplikacji UrBackup w ZimaOS pokazujące konfigurację obrazu, WebUI, sieci i portów
Źródło pokazuje, jak ustawienia obrazu, WebUI i sieci mogą być niezależnie nieprawidłowe, nawet gdy kontener istnieje.

Preferuj definicję Compose, którą można odtworzyć

Aktualny sklep aplikacji ZimaOS 2.0 i procedury obsługi aplikacji niestandardowych obsługują standardowy Docker Compose. Umieść obraz, trwałe ścieżki, strefę czasową, zasady ponownego uruchamiania i konfigurację sieci w jednej definicji Compose.

Użyj aktualnego modelu Compose w ZimaOS.

Działający pulpit nie jest testem końcowym

Zarejestruj jednego klienta, wykonaj małą kopię zapasową, uruchom ponownie kontener/hosta, a następnie przywróć plik. W ten sposób jednocześnie zweryfikujesz sieć, uprawnienia, trwałość bazy danych i miejsce przechowywania kopii zapasowych.

Umieść repozytorium kopii zapasowych na magazynie danych, nie na dysku systemowym

UrBackup może zużyć setki gigabajtów lub więcej. Ścieżka repozytorium powinna wskazywać rzeczywistą przestrzeń dyskową ZimaOS o znanej pojemności i stanie, a nie mały dysk systemu operacyjnego.

Przed dodaniem klientów potwierdź ścieżkę hosta w ZimaOS i monitoruj wolne miejsce podczas pierwszej pełnej kopii zapasowej.

Baza danych UrBackup jest częścią systemu przywracania

Pliki w /backups stanowią tylko jedną połowę użytecznego serwera. Stan/baza danych UrBackup w /var/urbackup śledzi klientów, metadane kopii zapasowych, zasady przechowywania i konfigurację serwera.

Udokumentuj i zabezpiecz oba trwałe mapowania, aby odtworzenie kontenera nie pozostawiło stosu plików kopii zapasowych bez oczekiwanego stanu serwera.

Stosuj dostęp do zapisu zgodny z zasadą najmniejszych uprawnień

Dostosowanie identyfikatorów UID/GID specyficzne dla źródła naprawiło jedno wdrożenie, ale rekurencyjna zmiana właściciela w całej puli pamięci masowej jest ryzykowna. Utwórz dedykowany katalog UrBackup i nadaj tożsamości kontenera dostęp do tego katalogu, zamiast przyznawać szeroki dostęp do zapisu w niezwiązanych z nim danych NAS.

Sieć hosta bezpośrednio udostępnia usługi UrBackup w ZimaOS

Gdy używana jest sieć hosta, nasłuchujące usługi UrBackup działają bezpośrednio na hoście. Jeśli ZFW lub inna zapora chroni NAS, zezwól wyłącznie na porty i sieci klientów wymagane do tworzenia kopii zapasowych i wykrywania. Nie publikuj bezpośrednio portów usług UrBackup w publicznym Internecie.

Przetestuj przywracanie, zanim uznasz serwer kopii zapasowych za gotowy

Wykonaj pełną kopię zapasową jednego klienta, uruchom ponownie ZimaOS lub odtwórz kontener, sprawdź, czy historia klienta pozostała, a następnie przywróć kilka plików do osobnej lokalizacji. Weryfikuje to dostępność obrazu, uprawnienia, trwałość stanu, sieć i faktyczną możliwość odzyskania danych — nie tylko zielony pulpit.

FAQ dotyczące UrBackup w ZimaOS

Czy użytkownik ze źródła ostatecznie uruchomił UrBackup?

Tak.

Czy każdy system ZimaOS powinien używać PUID 1000 i PGID 100?

Nie. Były to wartości specyficzne dla źródła.

Czy korzystanie z sieci hosta jest obowiązkowe?

Nie zawsze. Jest to udokumentowana opcja obrazu, której źródło z powodzeniem użyło, ale zmniejsza izolację sieciową.