PostgreSQL 14 com VectorChord 0.4.3 e pgvectors 0.2.0 para Immich v3.2.4. O wrapper atualiza libgnutls30, libssl3, openssl e a família Perl para 5.36.0-7+deb12u4, corrigindo os CVEs Perl bloqueantes do scan. Também substitui o gosu upstream por 1.19 compilado com Go 1.27.1. Preserva scripts, usuário, entrypoint, volume e health check oficiais.
| Item | Valor |
|---|---|
| Imagem prevista | lzocateli/immich-postgres:14-vc0.4.3-pgv0.2.0-v2 |
| Base | ghcr.io/immich-app/postgres:14-vectorchord0.4.3-pgvectors0.2.0@sha256:bcf63357191b76a916ae5eb93464d65c07511da41e3bf7a8416db519b40b1c23 |
| Plataformas declaradas | linux/amd64 (upstream também fornece linux/arm64) |
| Usuário, entrypoint e comando | Config.User vazio (root inicial); /usr/local/bin/immich-docker-entrypoint.sh, postgres -c config_file=/etc/postgresql/postgresql.conf |
| Persistência | /var/lib/postgresql/data no dataset local |
| Código-fonte e documentação | Repositório da imagem |
Inclui o banco e as extensões empacotadas no upstream para o Immich, pacotes Debian com correções de segurança e gosu reconstruído em estágio temporário. Não inclui o compilador Go no runtime nem dados, backups, senhas ou serviço de aplicação. Não troque esta imagem pelo PostgreSQL genérico sem plano de migração das extensões.
docker buildx build --pull --platform linux/amd64 --load -t lzocateli/immich-postgres:14-vc0.4.3-pgv0.2.0-v2 immich-postgres
Não execute contra o volume de produção para testar a imagem.
services:
database:
image: lzocateli/immich-postgres:14-vc0.4.3-pgv0.2.0-v2
environment:
POSTGRES_PASSWORD: ${DB_PASSWORD}
POSTGRES_USER: ${DB_USERNAME}
POSTGRES_DB: ${DB_DATABASE_NAME}
POSTGRES_INITDB_ARGS: "--data-checksums"
volumes:
- ${DB_DATA_LOCATION}:/var/lib/postgresql/data
shm_size: 128mb
restart: always
| Variável | Obrigatória | Secreta | Função |
|---|---|---|---|
DB_DATA_LOCATION | Sim, no Compose | Não | Dataset local do host, persistido no data directory. |
DB_PASSWORD / POSTGRES_PASSWORD | Sim | Sim | Senha fornecida em runtime; não colocar em Dockerfile/README. |
DB_USERNAME / POSTGRES_USER | Sim | Não | Usuário compartilhado com o servidor. |
DB_DATABASE_NAME / POSTGRES_DB | Sim | Não | Banco compartilhado com o servidor. |
POSTGRES_INITDB_ARGS | Somente na criação do volume | Não | --data-checksums no bootstrap. |
Não publique 5432/tcp no host. O mount /var/lib/postgresql/data precisa ser gravável pelo UID/GID efetivo; prefira armazenamento local e não NFS/SMB. O volume é obrigatório para backup e restore consistentes; POSTGRES_INITDB_ARGS não reconfigura um banco já criado.
O entrypoint upstream cria o banco no volume vazio e preserva os dados nos reinícios. Migrações da aplicação e extensões devem ser feitas conforme a release Immich correspondente. Health check é herdado da base; confirme o estado real após o build. Faça dump consistente e snapshot do dataset antes de upgrades.
Limite acesso ao volume e à rede Compose, injete a senha em runtime, mantenha o banco fora de portas públicas e confirme usuário e capacidades efetivas antes de impor restrições adicionais. Não reutilize o dataset com outra major do PostgreSQL sem procedimento de upgrade.
docker buildx build --check --file immich-postgres/Dockerfile immich-postgres
docker buildx build --pull --platform linux/amd64 --load -t lzocateli/immich-postgres:14-vc0.4.3-pgv0.2.0-v2 immich-postgres
| Tag | Mutabilidade | Uso |
|---|---|---|
14-vc0.4.3-pgv0.2.0-v2 | Imutável após publicação | Mesmo PostgreSQL 14 e extensões, com Debian e Perl atualizados e gosu corrigido. |
Não publique latest nem sobrescreva 14-vc0.4.3-pgv0.2.0-v2 depois de publicada. A tag v1 não foi encontrada no Docker Hub.
O run de publicação da tag v1 foi bloqueado pelo Trivy 0.70.0: os pacotes libperl5.36, perl, perl-base e perl-modules-5.36 estavam em 5.36.0-7+deb12u2, com correção 5.36.0-7+deb12u4 para os CVEs CVE-2026-13221, CVE-2026-42496 e CVE-2026-8376. A revisão v2 atualiza explicitamente essa família Perl junto dos pacotes de segurança já atualizados. Build linux/amd64, gate local do Trivy 0.72.0 com banco atualizado, inicialização PostgreSQL descartável e disponibilidade de vchord, vector e vectors passaram. Os quatro pacotes Perl estão em 5.36.0-7+deb12u4; o gate encontrou zero CRITICAL corrigíveis. O relatório completo mantém 93 HIGH e 3 CRITICAL sem versão corrigida: CVE-2023-45853 (zlib1g), CVE-2025-7458 (libsqlite3-0) e CVE-2026-6653 (libxml2). Esses achados permanecem visíveis e devem ser reavaliados quando houver versões corrigidas; nenhuma exceção foi adicionada. O estágio Go de build é descartado; apenas o binário gosu é copiado para a imagem final.
No workflow Publicar imagem de container, use context_path=immich-postgres, image_name=immich-postgres, image_tag=14-vc0.4.3-pgv0.2.0-v2, dockerfile=Dockerfile, platforms=linux/amd64 após os gates da release. Não publique antes do gate Trivy passar.
Agende dump e snapshots consistentes, monitore espaço e teste restores com a mesma imagem/extensões. Rollback após migração requer restaurar o backup pré-upgrade, não apenas trocar a imagem.
| Sintoma | Verificação | Correção |
|---|---|---|
| Banco não sobe | Logs, permissões e espaço do volume | Corrigir ACL e capacidade, sem apagar dados. |
| Extensão indisponível | Versões da imagem e da aplicação | Usar release compatível antes de migrar. |
Não oferece upgrade automático entre majors nem substitui um plano de backup de dados.
| Componente | Licença | Fonte |
|---|---|---|
| Conteúdo original deste repositório | MIT | containers |
| Imagem PostgreSQL empacotada pelo Immich | Avisos upstream e dependências | Pacote upstream |
| PostgreSQL | PostgreSQL License | Licença oficial |
MIT cobre apenas o conteúdo original deste repositório. Confirme os avisos de VectorChord, pgvectors e demais componentes na imagem e consulte a política de licenciamento.
14-vc0.4.3-pgv0.2.0-v2: atualiza a família Perl para corrigir os CVEs bloqueantes do Trivy.14-vc0.4.3-pgv0.2.0-v1: primeira revisão de segurança; a publicação foi bloqueada por CVEs corrigíveis na família Perl.14-vc0.4.3-pgv0.2.0: wrapper inicial do banco da release Immich v2.6.3.Content type
Image
Digest
sha256:21a55414d…
Size
213.6 MB
Last updated
25 days ago
docker pull lzocateli/immich-postgres:14-vc0.4.3-pgv0.2.0-v2