개요
Node.js 앱을 실행하려면 Node.js가 설치되어있어야 하는데, Node.js가 설치 되어있지 않은 환경에서 해당 앱을 실행시키고 싶을 때는 Standalone 형태의 실행 파일로 배포하는 것이 유용합니다.
pkg 설치
먼저 Node.js 앱을 실행 파일로 빌드해줄 수 있는 pkg
를 설치 합니다. 유의 해야 할 점은 pkg
는 내가 만든 앱에 포함되는 패키지가 아닌 빌드를 위한 패키지 이므로, dependencies
가 아닌 devDependencies
에 추가 되도록 합니다.
npm install --save-dev pkg
pkg 환경 설정
이제 어떠한 파일들을 실행 파일에 추가할지, 타겟 플랫폼은 무엇인지 pakage.json
에 설정해주어야 합니다.
"scripts": { "build": "pkg . --out-path bin" }, "pkg": { "scripts": "*.js", "targets": [ "node12-win-x64" ] }
개인적으로 설정해놓은 기본적인 pkg 빌드 환경입니다. 밑에 하나씩 설명 해보겠습니다.
scripts
"scripts"
에 npm run build
명령어가 실행 됐을 때, 실행 될 "build"
속성값에 pkg .
을 추가합니다. 뒤의 --out-path
인자는 빌드된 exe 파일이 생성될 경로를 지정한 것입니다. 이 인자값이 없으면 현재 경로에 생성 됩니다.
pkg - scripts
실행 파일에 포함될 js 파일들 입니다. 스크립트외의 에셋들은 "assets"
속성값으로 추가 가능합니다.
pkg - targets
타겟 플랫폼을 설정할수 있습니다. 특별히 지정하지 않는 경우 linux
, mac
, win
세가지 타겟 플랫폼 실행 파일로 빌드 됩니다. 타겟 플랫폼은 node{버전}-{플랫폼}-{아키텍쳐}
의 형태로 입력 가능합니다.
빌드
위와 같이 설정이 완료 한후 아래와 같이 같이 build 명령을 실행하면 단독으로 실행가능한 실행 파일이 생성 됩니다.
npm run build