NGMsoftware

NGMsoftware
로그인 회원가입
  • 매뉴얼
  • 학습
  • 매뉴얼

    학습


    Web 윈도우 환경에서 fnm(Fast Node Manager) 설치하기. (프로젝트별 노드 버전 자동 변경하기.)

    페이지 정보

    본문

    안녕하세요. 엔지엠소프트웨어입니다. nodejs를 이용해서 프로젝트를 진행하면 대부분 nvm을 사용하고 있을겁니다. volta를 쓰시는 분들도 계실거구요. 이번에 새로운 프로젝트를 진행하면서 기존에 사용하던 nvm 대신 fnm을 사용하기로 했습니다. 개발자들이 대부분 MAC을 사용하기 때문에 문제가 안되는데 윈도우를 쓰고 있는 저는 npm install fnm으로 설치가 안되더라구요^^

     

    vscode에서 아래 명령으로 설치할 수 있습니다.

    winget install Schniz.fnm

     

    모든 원본 사용 약관에 동의하십니까? 당연히 Y를 입력해야 합니다.

    PS E:\NGM Study\fnm test> winget install Schniz.fnm
    'msstore' 원본을 사용하려면 다음 계약을 확인해야 합니다.
    Terms of Transaction: https://aka.ms/microsoft-store-terms-of-transaction
    원본이 제대로 작동하려면 현재 컴퓨터의 두 글자 지리적 지역을 백 엔드 서비스로 보내야 합니다(예: "미국").
    
    모든 원본 사용 약관에 동의하십니까?
    [Y] 예  [N] 아니요: 

     

    금방 설치가 완료 되었습니다.

    설치 관리자 해시를 확인했습니다.
    보관 파일을 추출하는 중...
    보관 파일을 추출했습니다.
    패키지 설치를 시작하는 중...
    명령줄 별칭이 추가되었습니다. "fnm"
    경로 환경 변수 수정됨; 셸을 다시 시작하여 새 값을 사용합니다.
    설치 성공
    PS E:\NGM Study\fnm test> 

     

    스쿠프나 초콜리티를 이용해서 설치할수도 있습니다.

    scoop install fnm
    choco install fnm

     

    윈도우 환경에서 패키지를 관리하는 도구들이 많으니 아무거나 사용하셔도 됩니다. 하지만, npm이나 yarn으로는 설치가 안되더라고요. 아무튼, 설치가 완료되었으면 터미널에서 프로필 위치를 확인 해줍니다. 이건 사용자마다 다를 수 있으니 직접 확인하세요!

    PS E:\NGM Study\fnm test> $PROFILE
    C:\Users\ngmas\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1
    PS E:\NGM Study\fnm test>

     

    프로필 폴더로 이동하면 파워쉘 프로필이 있을수도 있고, 없을수도 있습니다. 파일이 없으면 "Microsoft.PowerShell_profile.ps1" 이름으로 새파일을 하나 생성 해줍니다. 그리고, 아래 내용을 추가하세요. 이미 파일이 있으면 마지막에 추가하면 됩니다. 파워쉘 전체 내용은 파일로 첨부 해두었으니, 다운로드 후 폴더에 복사하세요.

    fnm env --use-on-cd | Out-String | Invoke-Expression

     

    fnm이 정상적으로 설치되었는지 버전을 확인해보세요.

    PS E:\NGM Study\fnm test> fnm -V
    fnm 1.33.1
    PS E:\NGM Study\fnm test> 

     

    nvm과 사용 방법은 동일하기 때문에 크게 어렵지는 않을겁니다. 우선, 프로젝트에서 사용할 노드 버전을 설치 해보세요. 예제로 아래 2개를 설치 했습니다.

    PS E:\NGM Study\fnm test> fnm install 14.18.0
    Installing Node v14.18.0 (x64)
    PS E:\NGM Study\fnm test> fnm install 12.11.0
    Installing Node v12.11.0 (x64)
    PS E:\NGM Study\fnm test> 

     

    현재 설치되어 있는 노드 버전 목록을 확인할 수 있습니다.

    PS E:\NGM Study\fnm test> fnm list
    * v12.11.0
    * v14.18.0 default
    * system
    PS E:\NGM Study\fnm test>

     

    nvm으로 확인해도 동일한 버전이 현재 사용되고 있는걸 알 수 있습니다.

    PS E:\NGM Study\fnm test> fnm list
    * v12.11.0
    * v14.18.0 default
    * system
    PS E:\NGM Study\fnm test> nvm list
    
      * 14.18.0 (Currently using 64-bit executable)
        12.18.2
    PS E:\NGM Study\fnm test>

     

    노드 버전을 변경합니다.

    PS E:\NGM Study\fnm test> fnm use 12.11.0
    Using Node v12.11.0       
    PS E:\NGM Study\fnm test> 

     

    사용중인 노드 버전을 확인합니다.

    qZAYJkG.png

     

     

    상위 폴더로 이동한 후 다시 프로젝트 폴더로 들어 가보세요. 자동으로 nodejs 버전이 변경됩니다.

    PS E:\NGM Study\fnm test> cd ..
    PS E:\NGM Study> cd "fnm test"
    Using Node v14.18.0
    PS E:\NGM Study\fnm test> 

     

    프로젝트를 여러개 하는 경우 프로젝트 폴더마다 nodejs 버전이 다를 수 있습니다. 테스트용 코드까지 관리하기란 쉽지가 않습니다. 그래서, 프로젝트마다 아래 명령으로 노드 버전을 변경 해줍니다. 저는 nvm도 쓰고 fnm도 사용하기 때문에 둘다 설치되어 있습니다. 아래 둘중에 하나를 사용하면 됩니다.

    nvm use <node version>
    fnm use <node version>

     

    관리 프로젝트가 많고, 업무가 이리저리 왔다갔다 한다면 vsocde에서 매번 버전을 변경하기가 귀찮게 됩니다. 그래서, .nvmrc 파일에 노드 버전을 기록 해줍니다. 그러면, 프로젝트 폴더로 이동하면 자동으로 노드 버전을 변경해줍니다. 관리 프로젝트가 많을 때 유용합니다.

    CydUhLY.png

     

     

    fnm은 nvm의 .nvmrc 파일도 인식하지만, 아래와 같이 별도로 설정도 가능합니다. 아래 그림과 같이 노드 버전 파일이 만들어집니다.

    $ node --version
    v14.18.3
    $ node --version > .node-version

    aQRXG6f.png

     

     

    개발자에게 후원하기

    MGtdv7r.png

     

    추천, 구독, 홍보 꼭~ 부탁드립니다.

    여러분의 후원이 빠른 귀농을 가능하게 해줍니다~ 답답한 도시를 벗어나 귀농하고 싶은 개발자~

    감사합니다~

     

    • 네이버 공유하기
    • 페이스북 공유하기
    • 트위터 공유하기
    • 카카오스토리 공유하기
    추천0 비추천0

    첨부파일

    댓글목록

    등록된 댓글이 없습니다.