이 해결책이 동작합니까? d/boot_dev --init까지밖에 진행하지 못했습니다.
업데이트:
아, 개발자 UID가 1000이 아닌 경우, 예를 들어 discourse_dev 컨테이너의 discourse 사용자와 같은 상황에서는 이 방식이 아예 동작하지 않는 것 같습니다.
업데이트 2:
네, UID 1000인 사용자를 생성하니 모든 것이 정상적으로 동작했습니다. 따라서 이것이 확실히 문제의 원인이었습니다.
대안 UID로 이 환경을 실행하기 위한 기본 단계를 만들어 보려고 했지만, 현재 이 방식은 호스트 사용자로 프로세스의 다른 단계에서 디렉토리를 생성하는 동시에, 그 디렉토리를 활용하는 docker 명령을 실행하기 때문에, 잘못된 권한을 가진 새로운 디렉토리와 계속 싸워야 하는 상황이 됩니다. 코드에서 해결책을 찾아서 upstream에 제안할 가치가 있는지 확인해 보겠습니다. 문서에 UID 1000에서만 동작한다는 점을 명시하는 것이 가치가 있을 것 같습니다. PR을 보내서 upstream의 반응을 기다려 보겠습니다.
2026-05-22 05:48:13.857 UTC [347] FATAL: data directory "/shared/postgres_data" has wrong ownership
2026-05-22 05:48:13.857 UTC [347] HINT: The server must be started by the user that owns the data directory.
직접 겪은 여러 문제들
nastee@station ~/vendsrc/discourse > ./d/boot_dev --init
Using source in: /home/nastee/vendsrc/discourse
Using data in: /home/nastee/vendsrc/discourse/data/postgres
release: Pulling from discourse/discourse_dev
.....
Digest: sha256:e118af085d4be0486d4d9bfa83ac1c519d9975bed9a08180d10d5ad7c508632c
Status: Downloaded newer image for discourse/discourse_dev:release
docker.io/discourse/discourse_dev:release
f517752802e70b8a9110972bb3ddc0e9343d0c430603e4a9ae3eacc5ec69a2cf
Installing gems...
There was an error while trying to write to `/src/Gemfile.lock`. It is likely that you need to grant write permissions for that path.
해당 파일을 777로 설정했습니다(조금 찝찝하긴 하지만), 그렇게 하니 적어도 Gems는 설치되지만, 다음 docker exec 프로세스가 소스 디렉토리에 쓰려고 하는데 제 사용자로는 실행되지 않아서 다음과 같은 에러가 발생합니다:
EACCES EACCES: permission denied, open '/src/_tmp_82_62be1aeb82e80c1d1054dac8bdbc5923'
```\n좋아요, 왜 안 되지. `d/`를 실행 중인 클론된 소스 디렉토리가 있는 위치에 `sudo chmod 4777 .`을 실행했습니다.
그러자 다음 단계까지 도달합니다:
EACCES Error while trying to symlink “../../../node_modules/.pnpm/prettier@3.8.1/node_modules/prettier” to “/src/docs/developer-guides/node_modules/prettier”. The error happened while trying to create the parent directory for the symlink target. Details: Error: EACCES: permission denied, mkdir ‘/src/docs/developer-guides/node_modules’
또 다른 권한 문제를 만나고 결국 `chmod 777 -R .`을 실행했습니다.
결국 다음 에러로 끝이 납니다:
connection to server on socket “/var/run/postgresql/.s.PGSQL.5432” failed: No such file or directory