在Azure上部署MEAN + Webpack

yke*_*kel 2 mean azure node.js webpack

如何部署MEAN STACK + WEBPAC应用程序?

  • 我有一个MEAN Stack + Webpac应用程序和nodejs服务器,它提供其余的api
  • 我使用webpack dev服务器运行angular应用程序
  • 构建webpack应用程序后,我有build.js文件.

如何从nodejs应用程序引用构建文件?通常,使用requirejs,我会以这种方式使用html脚本标记

<script src="build.js" /> 
Run Code Online (Sandbox Code Playgroud)

我明白这不是webpac的方式,

Gar*_*SFT 9

一般来说,我们可以利用自定义部署脚本来安装nodejs模块并在Azure部署任务期间运行自定义脚本,以在Azure Web Apps上构建您的webpack应用程序.

请尝试以下步骤:

  1. 创建一个文件.deployment,并deploy.cmd通过azure-cli命令azure site deploymentscript --node --sitePath nodejs
  2. 运行npm命令npm install --save webapck以安装webpack到本地应用程序的目录中.
  3. package.jsonfile to run webpack命令中定义自定义npm脚本,稍后让部署任务调用: "scripts": { "webpack":"node_modules/.bin/webpack" },
  4. 修改deply.cmd文件,添加一个进程来运行我们定义的npm脚本.在原始文件中,您可以找到类似的脚本来安装node.js模块: :: 3. Install npm packages IF EXIST "%DEPLOYMENT_TARGET%\package.json" ( pushd "%DEPLOYMENT_TARGET%" call :ExecuteCmd !NPM_CMD! install --production IF !ERRORLEVEL! NEQ 0 goto error popd )
    我们可以在其下定义自定义脚本: :: 4. webpack IF EXIST "%DEPLOYMENT_TARGET%\webpack.config.js" ( pushd "%DEPLOYMENT_TARGET%" call :ExecuteCmd !NPM_CMD! run webpack IF !ERRORLEVEL! NEQ 0 goto error popd )
  5. 通过Git将您的webpack应用程序部署到Azure Web App.

这是我在Github上的测试webpack应用程序库,仅供参考.

  • 在Azure上部署express不需要配置部署脚本.您可以将入口文件重命名为`server.js`和`app.js`,将listen端口更改为`process.env.port`,并使用Gi​​t正常部署到Azure.有关详细信息,请参阅https://azure.microsoft.com/en-us/documentation/articles/app-service-web-nodejs-get-started/. (2认同)