본문 바로가기
개발/웹

맥 OSX에서 초간단 Node.js 설치하기 , 실행하기

by reikop.com 2012. 2. 15.
 요즘 전세계에 node.js의 열풍이 대단하다. 간략히 설명하자면 기존 IO 방식을 벋어난 비동기 웹서버이다. 당연히 사용자가 많아도 메모리 사용율, 시스템 부하가 적은게 가장큰 특징이다.



 Node.js는 글 작성 시점으로 0.6.10 버전으로 배포되고 있다. http://nodejs.org/ 에 방문하여 Download버튼을 클릭하여 다운로드 받는다. (윈도우 버전은 MS에서 먼저 설치판 제작을 도와줬다는 후문이다.)


 
 pkg파일을 실행하여 설치를 완료한다.

 터미널을 열서 npm을 실행하여 npm의 명령어 리스트가 나온다면 설치는 완료된것이다.
npm은 Node.js의 라이브러들을 설치/관리하는 툴이다.


 일단 가장 많이 사용하는 express를 설치한다. -g 옵션으로 nodejs기본 설치폴더에 같이 설치되도록 한다.

npm install -g express


 express가 설치되었다면 프로젝트을 생성한다. 원하는 디렉토리에 프로젝트를 생성할수 있다.


 생성이 되었다면 디렉토리에 들어가 원하는 라이브러리를 더 설치하면 되겠다.
 nodejs는 프로젝트별로 라이브러리 관리를 따로하게된다. 필자도 처음에는 라이브러리를 설치하면 어디서든 사용할수 있을줄 알았는데 그건 아니었고 프로젝트별로 사용하는 라이브러리를 따로 지정 할 수 있는것이었다.

 프로젝트폴더에 들어가서 app.js를 편집해보게 되면 기본적인 설정 및 RequestMapping을 해주는 메소드등이 보인다. app.listen(3000); 으로 되어있는것을 확인하고 나온다.
 그 다음 필요한 라이브러리들을 설치해준다. express는 Jade라는 view를 사용하는데 본문에선 설명하지 않겠다.

$npm install express
$npm install jade

express를 설치하지 않았다면 아래와 같은 오류메시지를 볼 수 있다.
Error: Cannot find module 'express'
    at Function._resolveFilename (module.js:332:11)
    at Function._load (module.js:279:25)
    at Module.require (module.js:354:17)
    at require (module.js:370:17)
    at Object.<anonymous> (/Users/reikop/nodejs/testproject/app.js:6:15)
    at Module._compile (module.js:441:26)
    at Object..js (module.js:459:10)
    at Module.load (module.js:348:31)
    at Function._load (module.js:308:12)
    at Array.0 (module.js:479:10)
마찬가지로 jade도 설치하지 않았다면 서버 구동시에 아래와같은 오류를 볼 수 있다.
Error: Cannot find module 'jade'
    at Function._resolveFilename (module.js:332:11)
    at Function._load (module.js:279:25)
    at Module.require (module.js:354:17)
    at require (module.js:370:17)
    at View.templateEngine (/Users/reikop/nodejs/testproject/node_modules/express/lib/view/view.js:134:38)
    at Function.compile (/Users/reikop/nodejs/testproject/node_modules/express/lib/view.js:68:17)
    at ServerResponse._render (/Users/reikop/nodejs/testproject/node_modules/express/lib/view.js:417:18)
    at ServerResponse.render (/Users/reikop/nodejs/testproject/node_modules/express/lib/view.js:318:17)
    at /Users/reikop/nodejs/testproject/routes/index.js:7:7
    at callbacks (/Users/reikop/nodejs/testproject/node_modules/express/lib/router/index.js:272:11)


설치한 expess는 위에서 설치한 express 와는 성격이 다르다. 어쨋든 설치후 터미널에 node를 실행한다.

$node app.js
Express server listening on port 3000 in development mode

브라우저로 http://localhost:3000 를 들어가게 되면 node.js의 helloworld를 볼 수 있다.