삽질정리
# 1. node 이미지 사용
FROM node:16-alpine
# 2. 패키지 우선 복사
COPY ./troller/package* /usr/src/app/
WORKDIR /usr/src/app
RUN npm install
# 3. 소스 복사
COPY ./troller /usr/src/app
# 4. WEB 서버 실행 (Listen 포트 정의)
EXPOSE 3000
CMD npm start
지금까지 사용해오던 react와 관련된 dockerfile이다
그중 RUN npm install에서 자꾸 에러가 떴다.
jenkins에서 빌드해보니
[0m[91mnpm[0m[91m [0m[91mERR![0m[91m Could not resolve dependency:
[0m[91mnpm[0m[91m [0m[91mERR![0m[91m peer react@">= 16.14.0 < 18.0.0" from @nivo/core@0.79.0
[0m[91mnpm[0m[91m [0m[91mERR![0m[91m node_modules/@nivo/core
[0m[91mnpm[0m[91m ERR![0m[91m @nivo/core@"^0.79.0" from the root project
[0m[91mnpm ERR! peer @nivo/core@"0.79.0" from @nivo/tooltip@0.79.0
npm ERR! node_modules/@nivo/tooltip
npm[0m[91m [0m[91mERR![0m[91m peer @nivo/tooltip@"0.79.0" from @nivo/core@0.79.0
[0m[91mnpm[0m[91m [0m[91mERR![0m[91m
[0m[91mnpm[0m[91m [0m[91mERR![0m[91m Fix the upstream dependency conflict, or retry
[0m[91mnpm[0m[91m ERR![0m[91m this command with --force, or --legacy-peer-deps
[0m[91mnpm [0m[91mERR! to accept an incorrect (and potentially broken) dependency resolution.
npm ERR!
이런식으로 나옴
대충 이해를 해보자하니
현재 설치된 react버전은 18.0.0인데 dependecy 중에 16.14.0에 의존되어 있어 의존성을 해결하지 못한다 이런의미인거같다
삽질해결
https://www.korecmblog.com/ERESOLVE-unable-to-resolve-dependency-tree/
이거보고 해결함 감사합니다...
위 블로그를 보니 나와같이 react 현재 버전이 dependency에서 의존되는 react 버전이라 그런것 같다.
npm install 할 때 --force 또는 --legacy-peer-deps와 함께 실행하라는 것이다. 즉, npm install --legacy-peer-deps 를 실행하면 위 의존성 문제를 해결할 수 있다.
npm 3~6버전까지는 경고만 뜨고 실제로 빌드가 안되진 않았다.하지만 npm7버전 부터 npm install하면 다음과 같은 에러가 뜨도록 바꼈다고 한다.
실은 react 잘몰라서 무슨소린지 잘 모르겠음
즉 나는
npm install -> npm install --legacy-peer-deps로 해결!
총정리
- npm install --force
로컬에 다운로드 복제본이 존재하더라도 다시 온라인에서 다운로드 받는다.
- npm install --legacy-peer-deps
마치 6버전 이하에서 동작하던 것처럼 peerDependencies를 무시한다.
- npm config set legacy-peer-deps true
모든 npm install에서 legacy-peer-deps로 동작하도록 설정한다. npm에서 권장하지 않는 방법이다.
- yarn install
'프로젝트 > 롤 전적검색 프로젝트' 카테고리의 다른 글
[롤 전적검색] NiFi&Kafka를 이용하여 Json 데이터를 RDMBS에 적재(2) (0) | 2022.09.28 |
---|---|
[롤 전적검색] NiFi&Kafka를 이용하여 Json 데이터를 RDMBS에 적재 (1) | 2022.09.26 |
RBMS에 JSON 적재하기(2) (0) | 2022.09.20 |
[트러블슈팅] 문제 해결 과정(1)- RDBMS에 JSON데이터 적재하기 (0) | 2022.08.31 |
[트러블 슈팅]라이엇api 호출 delay (0) | 2022.08.29 |