Node.js를 다운로드하러 들어가보면 Docker방식으로 설치하는 것을 최상단에 띄우고 있다.
저렇게 설치하고 나면 node나 npm을 사용할 때
바로는 실행할 수 없고
docker run -it --rm -v %cd%:/app -w /app node:22-alpine node app.js
이런식으로 길게 사용해야 하는데, 여간 귀찮은 일이 아니다.
다행히 PowerShell은 프로필에 function을 추가해서 단축어처럼 사용할 수 있는데, 문서에 ps1 파일 하나만 추가해주면 된다.
사용자 Documents\ 경로에 WindowsPowerShell 이라는 폴더를 하나 만들어준다.
해당 폴더 안에 Microsoft.PowerShell_profile.ps1 이라는 파일을 하나 만든다.
또는 파워쉘에서 아래와 같이 입력하면 자동으로 생성된다.
notepad $PROFILE
아래와 같이 내용을 추가해준다.
function node {
docker run -it --rm -v ${PWD}:/app -w /app node:22-alpine node $args
}
function npm {
docker run -it --rm -v ${PWD}:/app -w /app node:22-alpine npm $args
}
node라는 이름으로 함수를 등록해서, 실행 시 아래의 순서대로 실행된다.
1. node 이미지로 새 컨테이너를 만든다.
2. 현재 경로인 ${PWD}를 node컨테이너의 /app 경로로 마운트한다.
3. 워킹 디렉토리를 /app 경로로 설정한다.
4. 해당 컨테이너의 워킹 디렉토리 안에서 node $args가 실행된다
-> 예시: node app.js 인 경우 /app 디렉토리에서 node app.js가 실행됨.
npm도 같은 순서로 동작한다.
이제 PowerShell을 재실행하고 적용되었는지 확인하기 위해 node -v를 실행해본다.
다만, 이렇게 사용하면 서버를 열 때 포트가 열리지 않기 때문에 간단한 테스트용으로만 사용하고
실제로 구동할 때에는 docker compose를 사용하는 것이 좋다.