저도 마찬가지입니다. 관리자 사용자 프로필을 생성할 때 오류가 발생합니다. @zergov의 제안에 따라 관리자 생성 전에 yarn install 단계를 추가하면 정상적으로 동작합니다. 해당 내용을 추가하기 위해 PR을 생성했습니다: DEV: Yarn install to avoid error during initial migration seed - Pull Request #20866 - discourse/discourse - GitHub
추가 정보:
Docker Rootless 모드는 Linux에서 Docker Desktop과 동일한 권한 매핑 문제를 일으킵니다. 제가 게시한 우회 방법은 이 구성에서도 작동합니다.
다만, 해당 우회 방법에 대해 100% 확신이 서지 않아 Linux 시스템에 네이티브 Docker 설치로 전환했습니다. sudo 권한이 없는 사용자를 docker 그룹에 추가한 후 컨테이너 내부에서 권한이 올바르게 매핑되며, sudo 없이 docker 명령을 실행할 수 있게 되었습니다.
고맙습니다 @dsims, 방금 PR을 병합했습니다 ![]()
podman을 사용할 때 여기까지 진행됩니다 (d/boot_dev --init 실행 시도):
Installing gems...
Error response from daemon: environment variable "RAILS_ENV" badly formed, must be key=value
Fedora 데스크톱에는 수년간 계속 문제가 발생하고 있어서(푸시가 작동하지 않는 등 온갖 잡다한 문제들이 생기고) podman이 훨씬 수월하게 잘 작동하기 때문에(지원하는 프로젝트의 경우), 네이티브 개발 환경 방식을 사용해야 할 것 같습니다.
오류
오류 파일을 쓸 수 없음 “/src/app/assets/javascripts/discourse/yarn-error.log”: “EACCES: permission denied, open ‘/src/app/assets/javascripts/discourse/yarn-error.log’”
오류 예상치 못한 오류가 발생했습니다: “EACCES: permission denied, mkdir ‘/src/app/assets/javascripts/node_modules’”.
d/boot_dev --init 명령을 실행한 후 왜 이 오류가 발생하나요?
3.0" has incorrect peer dependency "@uppy/core@^3.2.1".
[4/4] Building fresh packages...
$ ../run-patch-package
patch-package 8.0.0
Applying patches...
@ember/jquery@2.0.0 ✔
babel-plugin-debug-macros@0.3.4 ✔
content-tag@1.1.1 ✔
ember-source@3.28.12 ✔
ember-this-fallback@0.3.1 (1 initial) ✔
ember-this-fallback@0.3.1 (2 themes) ✔
virtual-dom@2.1.1 ✔
Done in 101.54s.
Migrating database...
rake aborted!
Discourse::Utils::CommandError: /src/lib/discourse.rb:138:in `exec': node:internal/modules/cjs/loader:1080
throw err;
^
Error: Cannot find module 'esbuild'
Require stack:
- /src/app/assets/javascripts/theme-transpiler/build.js
at Module._resolveFilename (node:internal/modules/cjs/loader:1077:15)
at Module._load (node:internal/modules/cjs/loader:922:27)
at Module.require (node:internal/modules/cjs/loader:1143:19)
at require (node:internal/modules/cjs/helpers:121:18)
at Object.<anonymous> (/src/app/assets/javascripts/theme-transpiler/build.js:3:17)
at Module._compile (node:internal/modules/cjs/loader:1256:14)
at Module._extensions..js (node:internal/modules/cjs/loader:1310:10)
at Module.load (node:internal/modules/cjs/loader:1119:32)
at Module._load (node:internal/modules/cjs/loader:960:12)
at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:81:12) {
code: 'MODULE_NOT_FOUND',
requireStack: [ '/src/app/assets/javascripts/theme-transpiler/build.js' ]
}
Node.js v18.17.1
/src/lib/discourse.rb:172:in `execute_command'
/src/lib/discourse.rb:138:in `exec'
/src/lib/discourse.rb:34:in `execute_command'
/src/lib/discourse_js_processor.rb:119:in `build_theme_transpiler'
/src/lib/tasks/assets.rake:313:in `block in <main>'
Tasks: TOP => db:migrate => assets:precompile:theme_transpiler
(See full trace by running task with --trace)
이것과 관련이 있을 수 있습니다: Install Discourse for development using Docker - #239 by zergov
/var/www/discourse 디렉터리로 이동한 후 다음을 실행해 보세요:
yarn install
벤치마크에 대해 아시는 분이 계신가요?
이 주제에서 검색을 해 보았지만, 특정적으로 이 부분을 찾지 못했습니다. 일반 설치와 Docker 설치를 시도하여 비교해 본 사람이 있는지 궁금합니다 ![]()
이 주제에 설명된 절차를 사용하려는 분들을 위한 몇 가지 힌트:
-
1단계가 저에게는 작동하지 않았습니다. Docker를 설치하려면 다음 링크에 설명된 "편의 스크립트"를 사용해야 했습니다: Install Docker Engine on Ubuntu | Docker Docs
-
모든 명령어에
sudo가 필요합니다 -
누락된 3단계가 있는 것 같습니다: 관리자 사용자 계정을 생성해야 합니다. 새 관리자를 생성하려면 다음 명령어를 실행하세요:
sudo d/rails admin:create -
주제에서 언급했듯이 WSL을 사용하는 경우 Windows 파일 시스템에 대한 심볼릭 링크가 작동하지 않습니다. 그래도 시도하면 설치가 손상되고 gems가 누락된 상태가 됩니다. gems를 복구하려면 다음을 실행하세요:
sudo d/bundle install
안녕하세요.
Debian 12에 개발 환경을 설치하려고 하고 있습니다.
명령을 실행하면…
d/boot_dev --init
… 잠시 후 다음과 같은 오류가 나타납니다:
$ ../run-patch-package
patch-package 8.0.0
Applying patches...
@ember/jquery@2.0.0 ✔
babel-plugin-debug-macros@0.3.4 ✔
content-tag@1.1.2 ✔
ember-source@3.28.12 ✔
ember-this-fallback@0.4.0 (1 deprecation-name) ✔
ember-this-fallback@0.4.0 (2 themes) ✔
virtual-dom@2.1.1 ✔
Done in 70.39s.
Migrating database...
rake aborted!
Discourse::Utils::CommandError: /src/lib/discourse.rb:138:in `exec': node:internal/modules/cjs/loader:1080
throw err;
^
Error: Cannot find module 'esbuild'
Require stack:
- /src/app/assets/javascripts/theme-transpiler/build.js
at Module._resolveFilename (node:internal/modules/cjs/loader:1077:15)
at Module._load (node:internal/modules/cjs/loader:922:27)
at Module.require (node:internal/modules/cjs/loader:1143:19)
at require (node:internal/modules/cjs/helpers:121:18)
at Object.<anonymous> (/src/app/assets/javascripts/theme-transpiler/build.js:3:17)
at Module._compile (node:internal/modules/cjs/loader:1256:14)
at Module._extensions..js (node:internal/modules/cjs/loader:1310:10)
at Module.load (node:internal/modules/cjs/loader:1119:32)
at Module._load (node:internal/modules/cjs/loader:960:12)
at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:81:12) {
code: 'MODULE_NOT_FOUND',
requireStack: [ '/src/app/assets/javascripts/theme-transpiler/build.js' ]
}
Node.js v18.17.1
/src/lib/discourse.rb:172:in `execute_command'
/src/lib/discourse.rb:138:in `exec'
/src/lib/discourse.rb:34:in `execute_command'
/src/lib/discourse_js_processor.rb:119:in `build_theme_transpiler'
/src/lib/tasks/assets.rake:313:in `block in <main>'
Tasks: TOP => db:migrate => assets:precompile:theme_transpiler
(See full trace by running task with --trace)```
제가 무언가 잘못하고 있는 건가요?
yarn install # 이 명령은 esbuild를 포함해 모든 것을 다시 설치합니다.
# 이전에 오류가 발생하여 설치된 컨테이너 제거
docker stop discourse_dev
docker rm discourse_dev
d/boot_dev --init
# 성공하면 관리자 이메일 입력을 요청합니다.
안녕하세요. discourse/plugin 디렉토리에 심볼릭 링크를 생성한 후 재시작하면:
$ d/rails s
다음과 같은 오류가 발생합니다:
https://github.com/rails/sprockets (at 3.x@f4d3dae) is not yet checked out. Run `bundle install` first
bundle install을 실행해도 문제가 해결되지 않습니다. 여러 가지를 시도해 보았지만 아무것도 해결되지 않았습니다. 플러그인 디렉토리의 심볼릭 링크를 제거하고 재시작하면 다시 모든 것이 정상적으로 작동합니다. 다른 Discourse 설치 환경에서 정상적으로 작동하는 것으로 알려진 다양한 공식 플러그인으로도 시도해 보았습니다.
이것이 발생하는 이유가 무엇인지 아는 분이 있을까요?
d/bundle install을 대신 사용해 볼 수 있을까요?
d/bundle install을 실행할 수 있고, 이는 정상 작동하며 이후 모든 것을 시작할 수 있습니다. 하지만 플러그인이 discourse에 설치된 것으로 표시되지 않습니다.
그래서 d/shutdown_dev; d/boot_dev를 실행했는데, 그 후에 이전 오류 메시지가 다시 나타납니다. https://github.com/rails/sprockets (at 3.x@f4d3dae) is not yet checked out. Run `bundle install` first
vOv
다음에서 이 문제를 개선했습니다.
개발 환경을 시작할 때마다 매번 d/bundle install을 수동으로 실행해야 하는 것은 분명히 혼란스럽습니다. 당분간은 d/boot_dev를 실행할 때마다 d/bundle install을 실행해야 합니다.
계속해서 이 오류가 발생합니다.
error 파일 “"/src/app/assets/javascripts/discourse/yarn-error.log"”(으)로 쓸 수 없음: “EACCES: permission denied, open ‘/src/app/assets/javascripts/discourse/yarn-error.log’”
error 예기치 않은 오류가 발생했습니다: “EACCES: permission denied, mkdir ‘/src/app/assets/javascripts/node_modules’”.
음
여기와 같은 문제인 것 같아요. 근데 어디서 해결된 건지 도저히 찾을 수가 없네요.
sudo 없이 non-root 사용자로 실행하고 있나요?
root 사용자였습니다.
WSL Docker에 Discourse Development를 설치하려고 하고 있습니다. 축하 화면까지는 도달했지만, 관리자 계정이 없어 막혀 있습니다.
d/rails admin:create를 실행하면 stat bin/rails: no such file or directory: unknown 오류가 발생합니다.
무엇이 빠져 있나요?
감사합니다