Solução da comunidade

Instalar uma aplicação Docker personalizada no ZimaOS: exemplo do Subsyncarr

A June 2026 beginner thread about installing Subsyncarr outside the ZimaOS App Store. A community reply explained how Docker image, volumes, environment variables, and SCAN_PATHS map into the manual installer; current Subsyncarr releases now also expose a Web UI on port 3000.

O formulário «Instalar uma aplicação personalizada» do ZimaOS é muito mais fácil de utilizar quando se reconhece que está a traduzir conceitos comuns do Docker Compose em campos. O tópico de origem de junho de 2026 é um excelente exemplo para principiantes, porque o utilizador já tinha o Jellyfin a funcionar, queria adicionar o Subsyncarr para processar legendas e receava afetar o servidor multimédia existente.

A resposta da comunidade não se limitou a dizer «cole o ficheiro Compose». Explicou quais os valores que pertenciam a Imagem Docker, Etiqueta, Rede, Volumes, Variáveis de ambiente, Dispositivos e Comando do contentor e, sobretudo, por que motivo valores de ambiente como SCAN_PATHS têm de utilizar caminhos visíveis dentro do contentor.

Leia o formulário do ZimaOS como configuração do Docker

Formulário de aplicação personalizada do ZimaOS que mostra a imagem Docker, a etiqueta, o título, a interface Web, a rede, as portas, os volumes, as variáveis de ambiente, os dispositivos e o comando
O instalador manual apresenta as definições padrão do contentor como campos individuais, em vez de YAML bruto do Compose.

No exemplo de origem, a comunidade associou aproximadamente os campos básicos do Compose desta forma:

  • Imagem Docker → mrorbitman/subsyncarr
  • Etiqueta → a etiqueta de versão pretendida, historicamente latest
  • Título → um nome de aplicação amigável, como Subsyncarr
  • Rede → bridge a menos que as instruções atuais da aplicação exijam outra coisa

Use o exemplo de Compose a montante como fonte de verdade

Exemplo de Docker Compose do Subsyncarr que mostra a imagem, os volumes de multimédia, o agendamento cron, os caminhos de análise, os diretórios excluídos e os motores de sincronização
A tarefa correta é traduzir cada definição do Compose para o ZimaOS sem alterar o que o contentor espera internamente.

O Subsyncarr continuou a evoluir, por isso compare qualquer captura de ecrã antiga da comunidade com as definições atuais do contentor Subsyncarr antes da instalação.

Os volumes são a parte mais importante

Um volume do Docker tem dois lados:

  • Caminho do anfitrião: a pasta real do ZimaOS que contém filmes, séries, anime ou dados da aplicação.
  • Caminho do contentor: o caminho que o Subsyncarr vê dentro do seu próprio sistema de ficheiros.

Um mapeamento poderia ter, conceptualmente, o seguinte aspeto:

Anfitrião: /DATA/Media/Movies
Contentor: /movies

A pasta exata do anfitrião depende da localização real da sua biblioteca do Jellyfin. Não copie o caminho de outro utilizador. Verifique a aplicação Ficheiros do ZimaOS ou inspecione os mapeamentos de volumes existentes do Jellyfin, para que ambos os contentores apontem para os mesmos ficheiros multimédia.

A explicação atual de como as pastas de armazenamento reais do ZimaOS se tornam caminhos dentro do contentor é útil antes de adicionar qualquer aplicação multimédia personalizada.

SCAN_PATHS tem de corresponder ao lado do contentor

Este foi o ponto didático fundamental da resposta original. Se a pasta do anfitrião estiver mapeada para /movies dentro do contentor; depois, o Subsyncarr deverá analisar /movies.

Correto:

SCAN_PATHS=/movies,/tv,/anime

Incorreto quando esses são apenas caminhos do anfitrião:

SCAN_PATHS=/DATA/Media/Movies

O contentor não consegue ver caminhos arbitrários do anfitrião ZimaOS, a menos que essas pastas tenham sido explicitamente mapeadas para ele.

Traduza as variáveis de ambiente uma a uma

O exemplo de Compose original incluía variáveis como o fuso horário, a agenda cron, os caminhos de análise, os diretórios excluídos e os motores de sincronização. Coloque cada uma na secção Variáveis de ambiente, usando a mesma semântica de valores esperada pela aplicação original.

Não «melhore» uma expressão cron nem mude o nome de um caminho de contentor ao traduzi-lo. Primeiro, reproduza fielmente a configuração original e, depois, faça alterações quando a aplicação estiver confirmadamente a funcionar.

As versões atuais do Subsyncarr têm uma Interface Web

A resposta da comunidade de 2026 recomendava deixar a Interface Web e as Portas vazias, a menos que a documentação indicasse que a aplicação expunha alguma. Esse conselho estava correto para uma aplicação desconhecida, mas as versões atuais do Subsyncarr disponibilizam agora uma Interface Web na porta 3000 e dados persistentes da aplicação.

Se quiser o painel, publique uma porta do anfitrião para a porta 3000 do contentor e defina o campo Interface Web do ZimaOS para esse endereço do anfitrião. Se a porta já estiver a ser utilizada, altere apenas o lado do anfitrião, a menos que o fornecedor indique que a própria porta do serviço interno é configurável.

Mantenha os próprios dados da aplicação do Subsyncarr persistentes

As pastas de multimédia não são os únicos volumes importantes. O Subsyncarr atual também tem os seus próprios dados persistentes. Mantenha o estado da aplicação numa pasta do anfitrião que sobreviva às atualizações do contentor e inclua-a nas cópias de segurança.

O PUID e o PGID são importantes quando é necessário gravar legendas

Um processador de legendas precisa de mais do que acesso de leitura. Pode precisar de criar, mudar o nome ou modificar ficheiros de legendas junto dos ficheiros de multimédia. O Subsyncarr atual suporta PUID e PGID, por isso alinhe o utilizador do contentor com o proprietário ou as permissões de grupo das pastas de multimédia se as pesquisas funcionarem, mas a gravação das legendas falhar.

Deixe os campos Dispositivos e Comando do contentor vazios, a menos que o fornecedor o exija

A resposta da comunidade aconselhou corretamente a não preencher todos os campos apenas porque existem. Um mapeamento de dispositivos destina-se a hardware, como GPUs ou dispositivos de série. O comando do contentor substitui o comando de arranque predefinido da imagem. Nenhum dos dois deve ser adicionado sem um requisito específico do fornecedor.

Porque é que isto não deve fazer o Jellyfin deixar de funcionar

Adicionar um contentor separado não modifica o Jellyfin só porque ambas as aplicações leem a mesma pasta de multimédia. O maior risco está nas permissões: se o Subsyncarr puder mudar o nome ou escrever ficheiros, certifique-se de que a configuração apenas afeta os caminhos de multimédia e legendas pretendidos.

Comece com uma pequena biblioteca de teste antes de apontar a aplicação para toda a coleção.

Perguntas frequentes sobre aplicações personalizadas do ZimaOS

O SCAN_PATHS utiliza o caminho do anfitrião ou o caminho do contentor?

Utilize os caminhos dos contentores criados pelos seus mapeamentos de volumes.

Devo preencher todos os campos do formulário de aplicação personalizada do ZimaOS?

Não. Configure apenas as portas, os dispositivos, os comandos e os outros campos de que a aplicação realmente necessita.

A versão atual do Subsyncarr tem uma interface Web?

Sim. As versões atuais disponibilizam um painel na porta 3000.

O Subsyncarr pode utilizar as mesmas pastas de multimédia que o Jellyfin?

Sim, desde que ambos os contentores mapeiem as mesmas pastas reais do anfitrião e as respetivas permissões sejam adequadas.