일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 시퀄라이즈 기본설정
- next 매개변수
- FormData()
- 라우트 매개변수
- useEffect clean up
- express.static
- javascript기초
- OAuth 카카오
- useContext
- mysql wsl
- nodejs파일업로드
- 라우터 분리
- buffer.from
- JWT 하드코딩
- express router
- 비동기파일업로드
- Uncaught Error: could not find react-redux context value; please ensure the component is wrapped in a <Provider>
- JWT 로그인 기능 구현
- 세션으로 로그인 구현
- 아이디 중복체크기능
- express session
- 라우터미들웨어 분리
- 블록 만들기
- css기초
- express실행
- 라우터와 미들웨어
- JWT 만들어보기
- cookie-parser 만들어보기
- node.js path
- ws 라이브러리
- Today
- Total
즐코
[node] node.js 삭제 후 nvm 설치하기 본문
node.js 로 fix된 버전을 까는 것보다 nvm으로 깔아서 프로젝트별로 노드 버전을 관리해주는 게 좋다.
집에서 할 땐 맥os환경에서 작업하고 회사에선 window에서 작업하니 두 os환경에서의 설치방법을 간단히 정리해둔다.
node.js가 깔린 상태에서 nvm을 설치하면 꼬이기 쉬우니 기존의 node.js를 전부 삭제해준다.
[ Mac OS ]
1/ 기존 node.js 삭제
맥은 설치는 쉬웠으나 기존 설치된 node 삭제과정이 좀 지저분하다!
나같은 경우엔 아래 중 해당하지 않는 명령어들이 반이었는데 그래도 혹시 모르니 각 경로로 들어가서 node와 관련된건 다 지워주는 게 좋다.
sudo npm uninstall npm -g
sudo rm -rf /usr/local/lib/node
sudo rm -rf /usr/local/lib/node_modules
sudo rm -rf /var/db/receipts/org.nodejs.*
sudo rm -rf /usr/local/include/node
sudo rm -rf /Users/내계정디렉토리/.npm
sudo rm /usr/local/bin/node
sudo rm /usr/local/share/man/man1/node.1
brew uninstall node
2/ nvm 설치
다 지웠으면 nvm을 설치해주자
brew install nvm
3/ nvm 환경변수 설정하기
늘 그렇듯 nvm 명령어 사용을 위해 환경변수를 등록해준다.
사용 중인 쉘 종류마다 설정 파일 상에 아래 내용을 추가해준다.
# zsh
vi ~/.zshenv
# bash
vi ~/.bash_profile
난 zsh, bash 둘다 쓰므로 이 둘의 환경 설정 파일에 아래 내용을 추가해주었다.
export NVM_DIR="$HOME/.nvm"
[ -s "/opt/homebrew/opt/nvm/nvm.sh" ] && \. "/opt/homebrew/opt/nvm/nvm.sh" # This loads nvm
[ -s "/opt/homebrew/opt/nvm/etc/bash_completion.d/nvm" ] && \. "/opt/homebrew/opt/nvm/etc/bash_completion.d/nvm" # This loads nvm bash_completion
환경 변수 적용을 위해 source 명령어로 마무리해주기
# zsh
source ~/.zshenv
# bash
source ~/.bash_profile
[ Window OS ]
1/ 기존 node.js 삭제
간단하게 제어판 - 프로그램 제거 상에서 node.js를 삭제해주자
2/ nvm 설치
- https://github.com/coreybutler/nvm-windows/releases 들어가서 Assets 상의 nvm-setup.zip 다운받아 설치
- 다운 받을 때 nvm 설치 위치를 C:\Users\A\AppData\Roaming\nvm” 대신 C:\Users\A\public\nvm 로 넣어줌
3/ nvm 환경변수 설정하기
- window는 환경 변수 설정을 위해 cmd 창에다가 아래 명령어를 쳐준다.
setx path "%PATH%;C:\Users\A\public\nvm”
- 내 pc > 고급 시스템 설정 > 시스템 속성 > 환경 변수 > 내 윈도우 계정에 대한 사용자 변수 중 Path를 더블클릭하면 환경변수가 추가되었음을 확인할 수 있다.
[ 공통 사항 ]
윈도우건 맥이건 둘 다 잘 설치됐는지 아래 과정대로 확인해주자
1. nvm 버전 확인해주기
nvm -v
2. nvm 으로 node 를 원하는 버전으로 설치
nvm install 10.16
3. 설치된 node 버전들 확인
nvm list
4. 설치된 node 버전 사용하기
nvm use 10.16
5. 노드 버전 잘 설정되었는지 확인
node -v
[ .nvmrc ]
보니까 .nvmrc 라는 파일을 생성해서 각 프로젝트별로 node 버전을 쉽게 관리할 수 있다고 한다.
1. 프로젝트 루트 폴더에 .nvmrc 파일을 생성하고 그 안에 버전을 그냥 적어준다. 10.16 이렇게
2. .nvmrc 가 존재하는 디렉토리 상에서 아래 명령어로 node 버전이 로컬에 존재하는지 확인
nvm use
3. 로컬에 존재하지 않을 경우, 아래 명령어로 node 버전 설치
nvm install
[ .nvmrc 에 따라 자동으로 프로젝트별 노드 버전 설정하기]
출처[https://yunbo96.tistory.com/95]
회사나 개인적인 프로젝트를 하다보면 매 프로젝트마다 버전이 다른데, 그러면 매번 프로젝트 실행때마다 터미널 상에 nvm use 버전 명령어를 쳐줘야했다. 그게 매우 귀찮아졌고, 찾아보니 아래와 같은 명령어를 터미널 환경설정 파일에 넣어주고 저장하면 된다고 한다.
난 주로 zsh 터미널을 사용하기 때문에 .zshrc 파일상에 아래 코드를 넣어줬다.
# place this after nvm initialization! (프로젝트별 노드 버전 자동 설정)
autoload -U add-zsh-hook
load-nvmrc() {
local node_version="$(nvm version)"
local nvmrc_path="$(nvm_find_nvmrc)"
if [ -n "$nvmrc_path" ]; then
local nvmrc_node_version=$(nvm version "$(cat "${nvmrc_path}")")
if [ "$nvmrc_node_version" = "N/A" ]; then
nvm install
elif [ "$nvmrc_node_version" != "$node_version" ]; then
nvm use
fi
elif [ "$node_version" != "$(nvm version default)" ]; then
echo "Reverting to nvm default version"
nvm use defaults
fi
}
add-zsh-hook chpwd load-nvmrc
load-nvmrc
그리고 각 프로젝트마다 .nvmrc 파일을 추가해주니, 프로젝트를 오픈할때마다 아래와 같이 자동으로 버전을 바꿔줬다!
'환경설정' 카테고리의 다른 글
[git] 한 컴퓨터에서 깃헙 계정 여러 개 사용하기! (0) | 2023.02.23 |
---|---|
[VSC] Delete `␍` eslint (prettier/prettier) Error 해결방법 (0) | 2022.11.16 |