Rozwiązanie społecznościowe

Sprawdź, z których portów korzystają aplikacje ZimaOS: Dockpeek, mapowanie portów Dockera i pułapka gniazda socket

A January 2026 thread asking for a GUI list of ports used by ZimaOS applications. Community users suggested Docker inspection and Dockpeek; one tester broke Dockpeek by replacing its required /var/run/docker.sock volume, then confirmed reinstalling it with the original socket mapping restored container visibility.

ZimaOS nie udostępniał dedykowanego panelu „wszystkie porty aplikacji” w tym wątku ze stycznia 2026 roku, więc użytkownicy korzystali z inspekcji na poziomie Dockera oraz społecznościowego narzędzia App Store o nazwie Dockpeek. Dockpeek może zapewnić dokładnie taki przegląd, jakiego chciał autor pierwotnego wpisu: nazwę kontenera, obraz, opublikowane porty, stan oraz powiązane metadane w jednej tabeli.

Wątek odnotował również ważny problem specyficzny dla Dockera. Jeden z użytkowników, zgodnie ze swoim zwykłym nawykiem zmieniania ścieżek woluminów aplikacji innych firm na /DATA/AppData/..., przypadkowo zastąpił specjalne mapowanie gniazda Dockera używane przez Dockpeek. Aplikacja uruchomiła się, ale nie wyświetlała żadnych kontenerów. Ponowna instalacja bez zmiany woluminu gniazda przywróciła listę.

Inwentaryzacja portów ma dwa różne znaczenia

W przypadku aplikacji Docker warto rozróżnić:

  • port kontenera: port, na którym aplikacja nasłuchuje wewnątrz Dockera;
  • port hosta: port, który ZimaOS udostępnia na swoim interfejsie sieciowym.

Mapowanie takie jak host 3420 → kontener 8000 oznacza, że użytkownicy łączą się z hostem ZimaOS przez port 3420, mimo że aplikacja nasłuchuje na porcie 8000 wewnątrz swojego kontenera.

Dockpeek zapewnia graficzny podgląd portów kontenerów

Panel Dockpeek z listą kontenerów Docker ZimaOS, obrazów, opublikowanych portów i stanu zdrowia
Dockpeek zapewnił społeczności oczekiwany szybki podgląd tego, które aplikacje Docker korzystają z poszczególnych portów hosta.

Na źródłowym zrzucie ekranu widać kontenery z opublikowanymi portami, takimi jak 9100, 8888, 8443, 8090, 8081 i 7580, wraz z odpowiadającymi im nazwami aplikacji i obrazami.

Pusty ekran Dockpeek nie oznacza, że Docker nie ma kontenerów

Panel Dockpeek pokazujący brak kontenerów po zmianie mapowania gniazda Dockera
Jeden z użytkowników początkowo widział pustą listę Dockpeek, mimo że na serwerze ZimaOS działało wiele aplikacji.

Problem nie dotyczył samego wykrywania Dockera. Dockpeek potrzebuje dostępu do uniksowego gniazda Dockera, aby móc odpytywać demona.

Zachowaj mapowanie /var/run/docker.sock do tej samej ścieżki w kontenerze

Ustawienia Dockpeek w ZimaOS pokazujące mapowanie /var/run/docker.sock do tej samej ścieżki wewnątrz kontenera oraz DOCKER_HOST korzystający z gniazda uniksowego
Dockpeek korzysta z gniazda Dockera hosta oraz zgodnej wartości DOCKER_HOST, aby wyświetlać kontenery.

Ten wolumin nie zawiera danych aplikacji. Zastąpienie go zwykłym folderem AppData odcina Dockpeek od demona Dockera.

Nie każdy wolumin należy przenosić do AppData

Użytkownik wyjaśnił, że pakiety innych firm z App Store przyzwyczaiły go do dokładnego sprawdzania ścieżek woluminów i przenoszenia trwałych danych do standardowych lokalizacji AppData. Zwykle ma to sens w przypadku baz danych i konfiguracji aplikacji, ale specjalne punkty montowania, takie jak gniazda Dockera, urządzenia, certyfikaty czy pliki systemowe hosta, pełnią inną funkcję.

Obecna wersja ZimaOS wyjaśnia sposób mapowania zwykłych danych aplikacji na pamięć hosta. Używaj tego modelu dla trwałych danych, ale nie zmieniaj specjalnego mapowania systemowego, jeśli nie rozumiesz, dlaczego kontener go potrzebuje.

Zajęty port trzeba przypisać do jego aktualnego właściciela

Autor pierwotnego wpisu chciał zwolnić porty 80 i 443 po wcześniejszej instalacji Nginx. W odpowiedzi społeczności zasugerowano, że sam ZimaOS korzysta co najmniej z portu 80. Wątek nie zawierał jednak potwierdzonej przez IceWhale informacji, że oba porty są na stałe zarezerwowane w każdej wersji.

Przed usunięciem aplikacji lub zmianą portu panelu zidentyfikuj faktycznie nasłuchującą usługę albo mapowanie Dockera w bieżącym systemie.

CLI Dockera również może utworzyć inwentaryzację portów

Członek społeczności udostępnił polecenia Dockera, które wyświetlają nazwy kontenerów, obrazy i przypisania portów oraz mogą eksportować je do pliku tekstowego. Ponieważ polecenia te zostały przygotowane przez społeczność, a nie przez IceWhale, ta strona przedstawia samą koncepcję, zamiast prezentować dokładny potok powłoki jako oficjalną procedurę ZimaOS.

Użytkownicy preferujący terminal mogą skorzystać z inspekcji kontenerów Dockera, która dostarcza danych wizualizowanych przez Dockpeek.

Dostęp do gniazda Dockera zapewnia szerokie uprawnienia

Kontener, który ma dostęp do /var/run/docker.sock, może sprawdzać demona Dockera i potencjalnie nim zarządzać, zależnie od działania aplikacji. Traktuj Dockpeek i podobne narzędzia do zarządzania jako uprzywilejowaną infrastrukturę, a nie zwykłe aplikacje internetowe.

Nie udostępniaj publicznie interfejsu WebUI Dockpeek bez uwierzytelniania i odpowiedniej warstwy kontroli dostępu.

FAQ dotyczące podglądu portów w ZimaOS

Czy Dockpeek może pokazać, która aplikacja ZimaOS korzysta z opublikowanego portu Dockera?

Tak. Na źródłowym zrzucie ekranu razem widoczne są nazwy kontenerów, obrazy, mapowania portów i stan.

Dlaczego Dockpeek nie wyświetlał kontenerów jednemu z użytkowników?

Użytkownik zmienił wymagany wolumin /var/run/docker.sock. Ponowna instalacja bez zmiany tego specjalnego mapowania przywróciła listę.

Czy każdy wolumin aplikacji innej firmy należy przenosić do /DATA/AppData?

Nie. Trwałe dane aplikacji często powinny znajdować się w tej lokalizacji, ale specjalne mapowania, takie jak gniazdo Dockera, muszą zachować zamierzony zasób hosta.