Immich, gerenciamento de fotos e vídeos self-hosted de alto desempenho
(github.com/immich-app)- Immich é uma solução de gerenciamento de fotos e vídeos self-hosted de alto desempenho, permitindo garantir a privacidade e a propriedade dos dados do usuário
- Como alternativa a grandes serviços baseados em nuvem, como o Google Photos, oferece diversos recursos e suporte multiplataforma
- Suporta vários recursos baseados em inteligência artificial, como reconhecimento facial, busca por metadados e backup automático
- Está sendo desenvolvido rapidamente por diversos colaboradores de código aberto e recebe atualizações ativas da comunidade
- Apesar da alta utilidade e riqueza de recursos, recomenda-se seguir a estratégia de backup 3-2-1 para se prevenir contra corrupção ou perda de dados
Visão geral do projeto e importância
Immich é uma solução self-hosted de alto desempenho para gerenciamento de fotos e vídeos, baseada em código aberto, que oferece a vantagem de permitir que o usuário gerencie diretamente seus dados de mídia em um ambiente de servidor pessoal
Diferentemente de serviços de nuvem existentes, como Google Photos e Amazon Photos, vem ganhando destaque por permitir que o próprio usuário garanta sua privacidade e a propriedade dos dados
Destacam-se especialmente seus recursos robustos de IA e busca por metadados, backup automatizado, suporte a diversos dispositivos (mobile e web) e uma ampla gama de funcionalidades de conveniência para o usuário
Como projeto open source, recebe melhorias rápidas e incorpora diversos feedbacks, oferecendo vantagens marcantes em eficiência e escalabilidade em relação a produtos concorrentes
Situação do projeto e cuidados no desenvolvimento
- O projeto Immich está em desenvolvimento muito ativo
- Como ainda está antes da fase de estabilização, pode haver bugs e quebras de compatibilidade
- Recomenda-se não utilizá-lo como solução única de armazenamento de fotos e vídeos
- É recomendável adotar a estratégia de backup 3-2-1 (3 cópias, 2 tipos de mídia, 1 armazenamento off-site)
Principais recursos
| Recurso | Mobile | Web |
|---|---|---|
| Upload/visualização de fotos e vídeos | O | O |
| Backup automático ao iniciar o app | O | X |
| Prevenção de dados duplicados | O | O |
| Backup de álbuns selecionados | O | X |
| Download | O | O |
| Suporte a múltiplos usuários | O | O |
| Álbuns/álbuns compartilhados | O | O |
| Busca/visualização de metadados (EXIF, mapa etc.) | O | O |
| Busca por rosto/objeto/metadados/CLIP | O | O |
| Recursos administrativos (gerenciamento de usuários etc.) | X | O |
| Backup em segundo plano | O | X |
| Suporte a OAuth, chave de API, Live Photos etc. | diversos recursos disponíveis | |
| Visualização de imagem 360°, estrutura de armazenamento definida pelo usuário | suporte parcial limitado à web | |
| Compartilhamento público, arquivo & favoritos, mapa global | O | O |
| Compartilhamento com parceiro, reconhecimento/clustering facial, visualização de memórias | O | O |
| Suporte offline (mobile), galeria somente leitura | O/X | O |
| Visualização por pasta, tags, scrubbing/scroll com arrasto | vários suportes |
Tradução e documentação
- A documentação oficial está disponível em https://immich.app/
- O suporte a traduções multilíngues (incluindo coreano) amplia a conveniência para usuários globais
Stack técnica e informações open source
- Aplica uma stack moderna de tecnologias web/app, incluindo TypeScript (43%), Dart (35%) e Svelte (14%)
- Publicado sob a licença AGPL-3.0, qualquer pessoa pode usar e contribuir
- Conta com a participação ativa de mais de 1.500 colaboradores e já ultrapassou 75.000 estrelas no GitHub
Contexto de uso e diferenciais
- Está emergindo como um substituto completo para o Google Photos e serviços comerciais de gerenciamento de fotos na nuvem
- Oferece várias vantagens, como a liberdade do open source, soberania dos dados, rápida melhoria de recursos e escalabilidade, além das vantagens de gerenciar seu próprio servidor
- Com recursos poderosos de busca, classificação e IA, além de uma UI intuitiva, até iniciantes podem usá-lo imediatamente
Observações e conclusão
- Para evitar perda de dados, é necessário criar obrigatoriamente um sistema adicional de backup
- É uma escolha adequada para usuários iniciais, desenvolvedores e pessoas que valorizam sua privacidade
- É possível experimentar o funcionamento real por meio da demo oficial e da documentação
1 comentários
Comentários no Hacker News
Tenho vontade de testar, mas no momento a cadeia de suprimentos de software do Immich parece instável a ponto de exigir atualizações de dependências a cada poucos dias
Estou esperando até que o gerenciamento de dependências amadureça o suficiente para ser distribuído como pacote Debian
Pessoalmente, considero a estabilidade no gerenciamento de dependências um importante indicador de qualidade. Quero poder usar por pelo menos 2 ou 3 anos sem me preocupar com nada além de patches de segurança
Dependências mudando o tempo todo, espalhadas por vários projetos, e apenas Docker Compose não me passam confiança no longo prazo
Ironicamente, pouco depois de escrever isso, acabei vendo este post mostrando um caso real de ataque via dependência
Claro que o Debian também não é 100% imune a esse tipo de ataque, mas se as dependências não mudam com frequência, a chance de um ataque dar certo cai bastante
O Immich na verdade é até mais resistente a esse tipo de problema na cadeia de suprimentos
Isso porque ele tem uma política de esperar 5 dias antes de gerar PRs de atualização de dependências
É uma boa prática, e dá para confirmar nos detalhes da política
Acompanho o Immich já faz bastante tempo
Quero testar quando sair uma versão estável de verdade
Se eu trocar o Google Photos pelo Immich, também me preocupo em montar um backup adequado
Hoje faço backup automático dos dados principais do meu homelab para o Google Drive, mas se eu for hospedar minhas próprias fotos, quero considerar seriamente um backup off-site também
Falando francamente, o Immich ainda exibe um grande banner de aviso de beta na página inicial
Acho inevitável que o fluxo de desenvolvimento continue meio caótico até um lançamento estável
Todo desenvolvimento de software tem um pouco dessa natureza mesmo
Concordo que, quando as dependências vivem mudando, isso realmente passa uma sensação de “não está pronto para produção”
Eu mesmo, no passado, ao usar projetos self-hosted, tive casos em que as grandes atualizações eram tão frequentes que eu gastava mais tempo lidando com dependências do que usando a ferramenta
Por outro lado, o ritmo acelerado de desenvolvimento também é sinal de correções de bugs e evolução ativa
Eu também costumo considerar que algo já estabilizou o suficiente quando entra em empacotamento para Debian/Ubuntu, então até lá normalmente só testo em sandbox com Docker e não uso no modo “instalar e esquecer”
Se por acaso surgir um branch LTS para projetos assim, fico curioso para saber se isso ajudaria de fato em um ecossistema que muda tão rápido
Gosto muito do Immich
Antes do lançamento da "Beta timeline", havia muitos problemas de desempenho no Android, e no iPhone da minha esposa a sincronização quase não funcionava
Mas depois de ativar a Beta timeline, ficou quase perfeito. Estou usando há meses sem problemas
A interface de linha de comando (CLI) também é excelente, então consegui fazer coisas como criar álbuns automaticamente a partir de um backup do Signal
Sou realmente muito grato à equipe do Immich
Obrigado. Eu já tinha atualizado, mas na prática ainda não tinha feito a migração
Em comparação com antes, a diferença realmente parece enorme
Uma coisa que eu queria muito é a possibilidade de ordenar os resultados de busca por “data” em vez de “relevância”
Quando procuro uma foto de 3 anos atrás e sei exatamente quando foi tirada, os resultados aparecem de forma aleatória e fica difícil encontrar
Queria saber se você poderia explicar em mais detalhes esse processo de criar álbuns automaticamente a partir de um backup do Signal
Gostaria de entender se a estrutura é algo como guardar a chave de backup no home server e depois usar uma ferramenta para descriptografar e fazer o parsing
Um problema que tive é que as fotos importadas do iCloud ficam com a data de upload, e não com a data em que a foto foi tirada de fato
Fica bem estranho ao ver fotos antigas tiradas há muito tempo
Saí da beta
Tanto no app para iPhone quanto no Android, o backup para se o aplicativo não ficar aberto
Talvez seja porque o servidor ainda está na versão v.1.139.4, mas no Android a integração com a nova beta timeline foi pior para mim
Depois de usar por uma semana, desativei porque os thumbnails demoravam demais para carregar
Comparado ao Google Photos, qualquer versão da timeline do Immich ainda parece bem tosca em termos de experiência de uso
Como alternativa de backup é excelente, mas como app de galeria para uso diário é difícil recomendar
Meus elogios aos desenvolvedores, mas usuários mais comuns podem achar desconfortável de usar
Estou rodando o Immich em um Pi4 junto com vários outros serviços self-hosted
Os dados ficam armazenados em um NAS
O desempenho no Pi4 não é incrível, mas funciona bem sem grandes incômodos
A migração do Google Photos para o Immich também foi tranquila, e ele chegou perto de ser um substituto real
Recomendo muito experimentar a ferramenta immich-go. Ela ajuda bastante a levar dados do Google Takeout para o Immich
O Immich suporta busca baseada em CLIP, então parece ter busca semântica como o Google Photos, o que deve ser muito útil
Fico curioso para saber quão bem o processamento relacionado ao CLIP roda num Pi4
Queria saber como você está expondo o serviço para família ou SO (parceiro/a) fora de casa
Você usa tailscale, túnel do Cloudflare, VPN, ou abre portas diretamente no roteador?
Já usei tailscale, mas talvez seja meio inconveniente do ponto de vista da outra pessoa
Configurei o Immich na semana passada e estou muito satisfeito
Como já estou acostumado com setup em ambiente Docker, a instalação foi relativamente fácil, embora eu tenha notado algumas partes ainda inacabadas e espere que isso se resolva naturalmente à medida que o projeto amadurecer
Mostrei para minha parceira e ela gostou tanto que até encomendei mais armazenamento para o servidor
Uso Google Photos e OneDrive em paralelo, mas com a migração para o Immich não pretendo mais usar o OneDrive, e também quero expandir meu armazenamento em rede
No site oficial e na documentação está claramente escrito que “você não deve usar apenas o Immich como armazenamento único”, então pretendo continuar mantendo o backup no Google Photos e fazer backup do Immich e do armazenamento em rede para o B2 com restic
Esse método de backup por snapshots é algo que uso há muito tempo na administração de servidores
Na prática já precisei restaurar algumas vezes, e quando o backup é bem implementado ele realmente traz muita tranquilidade na hora em que você precisa dele
Seria ótimo poder usar o Immich, mas não tenho interesse em operar um home server
Aqui a energia elétrica não é estável, e o custo de instalar energia de backup pesa
Não quero lidar com manutenção de hardware
Também pesquisei hospedagem em nuvem, mas fotos e vídeos exigem muito espaço de armazenamento
Armazenamento de objetos é barato, mas o Immich não oferece suporte
Armazenamento em bloco é caro
Também pesquisei s3fuse, mas o consenso parece ser que o desempenho não fica bom quando há muitos arquivos pequenos, como thumbnails
Fico curioso para saber se alguém aqui já hospedou isso na nuvem e como resolveu
Recomendo o Pikapods como uma opção fácil de usar
O Hetzner Storage Box também é uma opção com preço razoável
Fiquei surpreso por suporte a armazenamento de objetos não ter sido uma prioridade desde o começo
Ainda assim, dá para entender se o público principal é self-hosting
Mas, no fim das contas, imagens e vídeos costumam seguir o padrão da indústria de combinar armazenamento de objetos barato com CDN, então eu esperava isso
Se é um serviço que pode crescer dinamicamente de acordo com o volume de dados dos usuários, eu esperaria como padrão uma opção para armazenar e buscar dados em S3 ou alternativas equivalentes
A equipe recentemente adicionou uma opção de implantação com um clique no marketplace da Digital Ocean
Se você precisa de um ambiente de hospedagem em nuvem, vale conferir
Sobre a parte de a energia ser instável e o investimento em energia de backup ser pesado
Existem UPSs baratos que conseguem informar o estado de energia via USB
Em caso de queda de energia, eles podem desligar o servidor com segurança após um certo tempo e ligá-lo novamente automaticamente quando a energia voltar
Mas entendo perfeitamente a vontade de não querer gerenciar hardware por conta própria
Recentemente dei uma olhada tanto no Immich quanto no Ente.io
O motivo de eu estar procurando algo para sincronização e compartilhamento de fotos foi que
O Immich parecia atraente, mas no fim escolhi o Ente, que oferece criptografia E2E, e estou bem satisfeito com ele
Quis testar o Ente e fiz self-hosting dele por conta própria
Meu interesse inicial também foi justamente a criptografia E2E
Coloquei o minio para armazenamento de dados em um VPS, e o restante, como frontend, roda em casa. Também uso esse mesmo VPS como reverse proxy
No momento estou usando sem recurso de compartilhamento, apenas para sincronizar fotos do meu celular para desktop e tablet
Minha família também quer reduzir a dependência do Google e tem demonstrado interesse
Em algum momento pretendo pagar pelo plano por causa do recurso de compartilhamento de álbuns (tenho fotos demais para depender só do Signal para compartilhar)
Fiquei curioso sobre em que aspectos o Syncthing perdeu confiabilidade
Eu estava pensando em usar mais, então queria saber se isso tem a ver com arquivos grandes ou com a quantidade de arquivos
O Google Photos passou um bom tempo anunciando armazenamento “ilimitado” e, há pouco tempo, acabou introduzindo discretamente um limite de armazenamento
Depois disso, fiquei ouvindo reclamações constantes de que “está faltando espaço” e perdi bastante tempo tentando liberar espaço
Essa experiência foi o gatilho para eu procurar uma solução self-hosted, e estou muito satisfeito usando o Immich há um ano
Estou compartilhando uma coletânea de posts anteriores do Hacker News sobre o Immich
1 ano atrás: post 1
1 ano atrás: post 2
3 anos atrás: post 3
7 meses atrás: post 4
4 anos atrás: post 5
1 ano atrás: post 6
Immich Progress Update (julho de 2024)
Self-hosted photo and video management solution (junho de 2024)
Gerenciamento self-hosted de fotos/vídeos com AGPL (abril de 2024)
Mudança de licença do Immich de MIT para AGPLv3 (fevereiro de 2024)
Backup self-hosted de fotos/vídeos do celular (julho de 2023)
Immich: backup para Android/iOS (outubro de 2022)
Tenho um Raspberry Pi parado aqui e queria testar o Immich nele
O que mais me preocupa é perder fotos, então tenho curiosidade sobre como montar backups
Comprar um Synology é a única opção ou existem outras alternativas comuns de backup?
Gostaria de apresentar humildemente um projeto pessoal
Chama-se Video Hub App, e permite navegar por vídeos em uma elegante galeria de rolagem infinita, com vários recursos de exploração como busca, filtros e tags
Funciona apenas localmente, sem qualquer transmissão online
videohubapp.com
É open source: github
Fiquei curioso se este app oferece suporte para exportação de estrutura e metadados