매우 오래된 컨테이너에서 업그레이드 시 postgres 권한 오류로 실패

Welcome to nginx! page before rebuild, site won't rebuild now 토론을 이어갑니다:

매우 오래된 컨테이너에서 업그레이드할 때 postgres 권한이 잘못 설정되는 경우가 드물게 있습니다. (postgres의 UID와 GID가 변경되었기 때문입니다. 이를 수정하려면 다음 작업이 필요합니다:

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

이 작업을 여러 번 수행해 왔습니다. 링크된 토픽에 대한 제 첫 번째 답변에서 문제를 인지했지만, 대부분의 사용자에게 필요한 UID/GID를 파악하는 것은 특히 쉽지 않습니다. (정상 작동하는 서버에서 ls -ld /var/discourse/shared/standalone/postgres_data를 실행해 보세요.)

3개의 좋아요

또는 더 쉬운 방법:

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

또는 더 나은 방법:

docker run --rm -v /var/discourse/shared/standalone/postgres_data:/data discourse/base:2.0.20250226-0128 chown -R postgres:postgres /data
3개의 좋아요

저는 이런 답변을 정말 좋아합니다. 많은 사람들이 "쉽다"고 부르지는 않을 테니까요!

저는 그냥 맨 컨테이너를 실행하는 것은 좋지 않다고 생각합니다.

1개의 좋아요