Solução da comunidade

Veja que portas as aplicações ZimaOS utilizam: Dockpeek, mapeamento de portas do Docker e a armadilha do 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.

O ZimaOS não apresentava um painel dedicado de “todas as portas das aplicações” nesta discussão de janeiro de 2026, pelo que os utilizadores recorreram à inspeção ao nível do Docker e a uma ferramenta comunitária da App Store chamada Dockpeek. O Dockpeek pode fornecer exatamente a visão geral pretendida pelo autor da publicação original: nome do contentor, imagem, portas publicadas, estado e metadados relacionados numa só tabela.

A discussão também registou uma falha importante específica do Docker. Um utilizador seguiu o seu hábito habitual de alterar os caminhos dos volumes de aplicações de terceiros para /DATA/AppData/... e substituiu acidentalmente a montagem especial do socket do Docker do Dockpeek. A aplicação abriu, mas não apresentava quaisquer contentores. A reinstalação sem alterar o volume do socket restaurou a lista.

Um inventário de portas pode ter dois significados diferentes

Para aplicações Docker, é útil distinguir:

  • porta do contentor: a porta em que a aplicação escuta dentro do Docker;
  • porta do anfitrião: a porta que o ZimaOS expõe na sua própria interface de rede.

Um mapeamento como anfitrião 3420 → contentor 8000 significa que os utilizadores se ligam ao anfitrião ZimaOS através da porta 3420, apesar de a aplicação escutar na porta 8000 dentro do seu contentor.

O Dockpeek fornece uma vista gráfica das portas dos contentores

Painel do Dockpeek com uma lista dos contentores Docker, imagens, portas publicadas e estado de funcionamento do ZimaOS
O Dockpeek forneceu à comunidade a visão imediata pretendida sobre quais as aplicações Docker que utilizavam quais portas do anfitrião.

A captura de ecrã de origem mostra contentores com portas publicadas como 9100, 8888, 8443, 8090, 8081 e 7580, juntamente com os nomes e as imagens das aplicações correspondentes.

Um ecrã vazio do Dockpeek não significa que o Docker não tenha contentores

Painel do Dockpeek sem contentores depois de o mapeamento do socket do Docker ter sido alterado
Um utilizador viu inicialmente uma lista vazia no Dockpeek, apesar de o servidor ZimaOS ter muitas aplicações em execução.

O problema não estava na deteção do Docker. O Dockpeek precisa de acesso ao socket Unix do Docker para poder consultar o daemon.

Mantenha /var/run/docker.sock mapeado para o mesmo caminho no contentor

Definições do Dockpeek no ZimaOS mostrando /var/run/docker.sock mapeado para o mesmo caminho dentro do contentor e DOCKER_HOST a utilizar o socket Unix
O Dockpeek depende do socket do Docker no anfitrião e do valor correspondente de DOCKER_HOST para enumerar os contentores.

Este volume não contém dados da aplicação. Substituí-lo por uma pasta normal de AppData remove a ligação do Dockpeek ao daemon do Docker.

Nem todos os volumes devem ser migrados para AppData

O utilizador explicou que os pacotes de terceiros da App Store o tinham habituado a analisar cuidadosamente os caminhos dos volumes e a mover os dados persistentes para localizações AppData normalizadas. Isto é geralmente adequado para bases de dados e configurações de aplicações, mas montagens especiais, como sockets do Docker, dispositivos, certificados ou ficheiros do sistema anfitrião, têm uma finalidade diferente.

O ZimaOS atual explica como os dados normais das aplicações são mapeados para o armazenamento do anfitrião. Utilize esse modelo para os dados persistentes, mas não reescreva uma montagem especial sem compreender por que motivo o contentor precisa dela.

Uma porta já utilizada tem de ser associada ao proprietário atual

O autor da publicação original queria especificamente libertar as portas 80 e 443 depois de uma instalação anterior do Nginx. Uma resposta da comunidade especulou que o próprio ZimaOS estava a utilizar pelo menos a porta 80. A discussão não continha uma confirmação da IceWhale de que ambas as portas estão permanentemente reservadas em todas as versões.

Antes de eliminar uma aplicação ou alterar a porta de um painel, identifique o processo que está efetivamente a escutar ou o mapeamento Docker no sistema atual.

A CLI do Docker também pode gerar um inventário de portas

Um membro da comunidade partilhou comandos Docker que listam os nomes dos contentores, as imagens e as atribuições de portas, podendo exportá-los para um ficheiro de texto. Como esses comandos foram criados pela comunidade e não constituem instruções da IceWhale, esta página mantém a ideia sem apresentar o pipeline exato da shell como um procedimento oficial do ZimaOS.

Para os utilizadores que preferem o terminal, a inspeção dos contentores Docker fornece os dados subjacentes que o Dockpeek apresenta visualmente.

O acesso ao socket do Docker é poderoso

Um contentor que consiga aceder a /var/run/docker.sock pode inspecionar e potencialmente controlar o daemon do Docker, dependendo do que a aplicação fizer. Considere o Dockpeek e ferramentas de gestão semelhantes como infraestrutura privilegiada, e não como aplicações Web comuns.

Não exponha publicamente a interface Web do Dockpeek sem autenticação e uma camada adequada de controlo de acesso.

Perguntas frequentes sobre a visualização de portas no ZimaOS

O Dockpeek consegue mostrar qual a aplicação ZimaOS que é proprietária de uma porta Docker publicada?

Sim. A captura de ecrã de origem mostra simultaneamente os nomes dos contentores, as imagens, os mapeamentos de portas e o estado.

Porque é que o Dockpeek não mostrou contentores para um dos utilizadores?

O utilizador alterou o volume obrigatório /var/run/docker.sock. A reinstalação sem alterar essa montagem especial restaurou a lista.

Devo mover todos os volumes de aplicações de terceiros para /DATA/AppData?

Não. Os dados persistentes das aplicações pertencem frequentemente a essa localização, mas as montagens especiais, como o socket do Docker, têm de manter o recurso do anfitrião a que se destinam.