front-end/그외

폐쇄망 환경에서 개발 환경 세팅하기 (npm install)

행인데어 2024. 1. 30. 23:05

폐쇄망 환경에서 npm install하기

 

처음 내 생각)

node_modules 폴더를 압축해서 폐쇄망 환경에서 받은 후, npm install하면 되지 않을까?

→ 그런데 검색해보니, node_modules 폴더는 압축해도 너무 무겁고 npm이나 yarn 버전에 따라 내용이 조금씩 다르다고함

→ 다른 방법을 찾아보자

 

 

해결방법) yarn-offline-mirror

검색하다 보니 yarn-offline-mirror라는게 많이 나왔음.

offline mirror는 다운받은 패키지 아카이브를 압축 해제하기 전 상태로 보관하는 저장소를 말한다.

오프라인에서 패키지를 가져오기 위해 먼저, 프로젝트 폴더 안에 offline 디렉토리를 만들고, 미리 패키지를 다운로드 해놓는다. 그리고 폐쇄망 환경에서 offline mirror에서 패키지를 읽어 node_modules를 재구성 한다.

 

 

순서대로 정리해보자면

 

1. yarn 설치

npm install -g yarn

2. 프로젝트 root 경로에 .yarnrc 파일 생성하고 파일 내부에 아래와 같이 작성

yarn-offline-mirror "./npm-offline-packages"
yarn-offline-mirror-pruning true

 

3. node_modules 폴더와 yarn.lock 파일 삭제

4. yarn 캐시 삭제

yarn cache clean

 

5. yarn install

6. 폐쇄망 개발 환경에서 프로젝트를 반입 후, 터미널에서 yarn install —offline

yarn install --offline

// 오프라인에서 yarn이 설치되어 있지 않을 경우
// yarn은 node에서 바로 실행할 수 있는 js파일을 제공한다
// 프로젝트 폴더에 최신버전의 yarn 파일을 저장후, 아래와 같이 작성
node ./yarn-1.22.21.js install --offline

 

yarn.js 파일 다운로드 하는곳: https://github.com/yarnpkg/yarn/releases

참고 블로그

https://songdev.tistory.com/74

https://hong-sam.tistory.com/11

https://velog.io/@yeoonnii/오프라인에서-React-패키지-매니저npmyarn-install하기