Redis template에서 "permission denied" 오류 발생

개별 컨테이너(web_only, data)가 분리된 설정에서 redis.template.yml을 사용하여 재빌드(rebuild)할 때 다음과 같은 문제가 발생합니다.

...
/.launcher rebuild web_only

I, [2022-04-01T06:14:05.621316 #1]  INFO -- : End of custom commands
I, [2022-04-01T06:14:05.621524 #1]  INFO -- : Terminating async processes
I, [2022-04-01T06:14:05.621574 #1]  INFO -- : Sending TERM to exec chpst -u redis -U redis /usr/bin/redis-server /etc/redis/redis.conf pid: 29
29:signal-handler (1648793645) Received SIGTERM scheduling shutdown...
29:M 01 Apr 2022 06:14:05.643 # User requested shutdown...
29:M 01 Apr 2022 06:14:05.643 * Saving the final RDB snapshot before exiting.
29:M 01 Apr 2022 06:14:05.896 # Failed opening the RDB file dump.rdb (in server root dir /) for saving: Permission denied
29:M 01 Apr 2022 06:14:05.896 # Error trying to save the DB, can't exit.
29:M 01 Apr 2022 06:14:05.896 # SIGTERM received but errors trying to shut down the server, check the logs for more information
I, [2022-04-01T06:14:15.622606 #1]  INFO -- : exec chpst -u redis -U redis /usr/bin/redis-server /etc/redis/redis.conf pid:29 did not terminate cleanly, forcing termination!

redis.template.yml는 data.yml의 일부여야 합니다.

git pull을 수행한 후 ./launcher rebuild web_only를 실행했고, 성공적으로 완료되었습니다.
./discourse-doctor를 사용해 보셨나요? 큰 도움이 되지 않을 수도 있지만요.

./launcher start web_only로 기존 컨테이너를 여전히 부팅할 수 있다면, 먼저 전체 백업(보험 차원에서)을 수행한 후 ./launcher stop web_only; ./launcher rebuild data를 시도해 보세요. data 재빌드过程中에 오류가 발생하지 않으면, 문제가 해결되는지 확인하기 위해 ./launcher rebuild web_only를 시도해 보세요.

그동안 일관된 재현 방법이 없어 이 주제를 #support로 이동합니다.

아, 그러면 제가 뭔가를 헷갈렸네요. redis 템플릿이 web_only 컨테이너의 일부인 줄 알았는데, 실제로는 data 컨테이너의 설정에 이미 포함되어 있더라고요. 여기가 더 말이 되네요 :wink: