如何将NodeJs应用程序从Bitbucket部署到Azure

时间:2018-02-17 22:27:32

标签: node.js azure-web-sites bitbucket-pipelines

Bitbucket从前一段时间开始有Pipelines的可用性,而且我一直在苦苦挣扎,不是来自Bitbucket部分,而是Azure部分,因为我找不到一种简单的部署方式。

在我的BitBucket中,我有bitbucket-pipelines.yml

image: node:8.9.4

pipelines:
  default:
    - step:
        name: Build and test
        caches:
          - node
        script: # install packages and run tests
          - npm install
          - npm test
    - step:
        name: Deploy to Azure
        script:
          - git push https://$AZURE_LOGIN:$AZURE_PASSWORD@$AZURE_APP_NAME.scm.azurewebsites.net/$AZURE_APP_NAME.git master

并且从BB部分运行良好,问题是从该命令行发送到Azure的代码是应用程序源,我找不到一种简单的方法来告诉Azure运行npm install和我最终出现内部服务器错误,当我在部署后尝试运行网站时找不到包...

然后,我创建了一个VSTS帐户,在两个部分中配置持续交付 ... Azure门户中的选项CD以及在VSTS中创建管道......

(直接通过Azure门户)

(从VSTS手动)

我的问题很简单......为了避免Azure门户中的任何内容(此时似乎很复杂,或者只是因为我更习惯使用AWS和Heroku),有没有办法实际从BitBucket自动部署?

1 个答案:

答案 0 :(得分:0)

  

如何将nodeJs应用程序从Bitbucket部署到Azure

一个简单的解决方案是使用持续部署,  这个link详细介绍了如何设置,基本上是

  1. 您选择存储库所在的位置: enter image description here
  2. 每次更新源代码库时,更改都会推送到Azure
  3. Azure将构建新网站,在您的情况下(节点环境),npm install will run automatically
  4. 我不确定您是否需要VSTS,因为我认为您的工作流程是这样的(基于我对CI如何工作的假设)

    1. 创建拉取请求,触发您的位桶管道
    2. 一旦构建和测试都成功,就合并你的提交
    3. 通过持续部署,Azure将受到关注并更新您的网站