음, 흥미롭네요. 확인해 보겠습니다:
`yarn why`
❯ yarn why markdown-it
yarn why v1.22.10
[1/4] 🤔 Why do we have the module "markdown-it"...?
[2/4] 🚚 Initialising dependency graph...
[3/4] 🔍 Finding dependency...
[4/4] 🚡 Calculating file sizes...
=> Found "markdown-it@13.0.1"
info Reasons this module exists
- "_project_#discourse" depends on it
- Hoisted from "_project_#discourse#markdown-it"
info Disk size without dependencies: "732KB"
info Disk size with unique dependencies: "1.31MB"
info Disk size with transitive dependencies: "1.31MB"
info Number of shared dependencies: 5
=> Found "ember-cli#markdown-it@12.0.4"
info This module exists because "_project_#discourse#ember-cli" depends on it.
info Disk size without dependencies: "724KB"
info Disk size with unique dependencies: "1.3MB"
info Disk size with transitive dependencies: "1.3MB"
info Number of shared dependencies: 5
=> Found "markdown-it-terminal#markdown-it@8.4.2"
info This module exists because "_project_#discourse#ember-cli#markdown-it-terminal" depends on it.
info Disk size without dependencies: "708KB"
info Disk size with unique dependencies: "1.29MB"
info Disk size with transitive dependencies: "1.29MB"
info Number of shared dependencies: 5
✨ Done in 0.39s.
즉, discourse의 package.json은 13.0.1을 요청하고, ember-cli의 자체 package.json은 12.0.4를 요청하며, markdown-it-terminal은 8.4.2를 요구합니다.
어쨌든, 이론적으로 이는 모두 눈에 띄지 않아야 합니다. Discourse 자체는 13.0.1을 요청하므로, app/assets/javascripts/node_modules/markdown-it의 버전은 13.0.1이어야 합니다. 나머지 오래된 버전은 각각의 상위 모듈에 제공될 것입니다.
내부에서는 이러한 문제가 발생하지 않고, 비표준 설치 환경을 가진 사용자들에게만 나타나고 있으므로, 2컨테이너 설정 템플릿 어딘가에 yarn install이 누락되어 기본 이미지에서 캐시된 markdown-it 버전으로 데이터베이스 컨테이너가 시작되고 있다고 의심합니다 ![]()