A atualização de um container muito antigo falha devido a erros de permissão do postgres

Continuando a discussão de Página de boas-vindas do nginx! antes da reconstrução, o site não reconstrói agora:

É bastante raro, mas ao atualizar de um contêiner muito antigo, as permissões para o postgres estão incorretas (o UID e GID do postgres mudaram. Para corrigi-lo, é necessário:

chmod -r 101.104 /var/discourse/shared/standalone/postgres_data

Eu fiz isso várias vezes. Reconheci o problema na minha primeira resposta ao tópico vinculado, mas descobrir qual UID/GID é necessário não é particularmente fácil para a maioria das pessoas. (Encontre um servidor funcionando e execute ls -ld /var/discourse/shared/standalone/postgres_data.)

3 curtidas

Ou, mais fácil:

○ → docker run --rm discourse/base:2.0.20250226-0128 id postgres
uid=101(postgres) gid=104(postgres) groups=104(postgres),107(ssl-cert)

ou ainda melhor:

docker run --rm -v /var/discourse/shared/standalone/postgres_data:/data discourse/base:2.0.20250226-0128 chown -R postgres:postgres /data
3 curtidas

Essa é o tipo de resposta que eu adoro. Não é o que muitas pessoas chamariam de “fácil”!

Eu só não penso em executar o contêiner puro.

1 curtida