2017-10-30 14 views
1

私はnode.js + expressアプリケーションを持っています。それを自分のサーバーに展開するには、パートナーに、アプリケーションを「dist」というフォルダに「ビルド」して、サーバーに展開する必要があるすべてのファイルが存在することを要求しています。どのように私はそのような種類のビルドを実装できますか?"dist"というフォルダにノードアプリケーションの内容を "ビルド"する方法

ヒントやガイダンスをいただければ幸いです。

+1

ビルドプロセスがない場合は、ソースディレクトリを再帰的にコピーしてください:) –

答えて

1

package.jsonでこれを行うスクリプトを作成することができます。ディレクトリを作成して、実稼働環境でアプリケーションを実行するために必要なすべてのものをコピーするだけで済みます。

//package.json 
{ 
    //... 
    "scripts": { 
    "dist": "mkdir -p dist && cp -R node_modules src server.js ... dist" 
    } 
    //... 
} 

上記以外のプラットフォーム間での互換性はありません。これは常にそのようなビルドスクリプトの複雑な部分です。これが問題の場合は、gulpなどの利用可能なツールを使用することをお勧めします。

NPMライフサイクルフックを使用して、インストールの一環として自動的に行うこともできます。 devの依存関係を省略するには、npm installではなくnpm install --productionも実行してください。

+0

お返事ありがとうございます。これが何であるか教えてください。 - node_modules src server.js ... dist – Arihant

+0

インストールされているNPMモジュールを明示的なアプリケーション 'node_modules 'にする可能性のあるファイルの例。この例では 'src'はおそらくJSファイルを含むディレクトリであり、' server.js'はノードアプリケーションの共通エントリーポイントです。実際には 'npm start'はデフォルトで' serverという名前のファイルを自動的に試して実行します。あなたが持っている場合はjs'。 https://docs.npmjs.com/cli/start –

+0

P. (...)はコマンドの一部ではなく、単にファイルやディレクトリをコマンドに追加する必要があるかもしれないことを示しています。 –

関連する問題