【问题标题】:Visual Studio Code: Deploy to azure appears to work but no files seem to transferVisual Studio Code:部署到 azure 似乎可以工作,但似乎没有文件传输
【发布时间】:2020-01-31 18:14:05
【问题描述】:

我正在尝试按照以下说明将我的节点应用程序部署到 Azure... https://docs.microsoft.com/en-gb/azure/javascript/tutorial-vscode-azure-app-service-node-01

一切似乎都正常,进度条在 VS 代码中运行了几分钟,我收到了部署完成消息。但是当我到达 .scm.azurewebsites.net 并在 SSH 中查找文件时,目录中除了保留页面之外没有列出任何内容,当我在浏览器中浏览到应用程序地址时,我只是得到了保留页面。

我在更新 FTP 传输时也遇到了类似的问题。我似乎无法在 azure 中运行 Web 应用服务中的任何部署选项,以不同的方式尝试了一些不同的应用。部署不会返回错误,但更改的文件永远不会到达目标目录。

值得注意的是,我不是我的雇主 Azure 租户的管理员。

附加:我尝试从 VS CODE 创建一个新的应用服务,但它返回了这个错误。我需要能够准确地告诉我的租户管理员我将被授予哪些权限。这会是“Web 应用程序服务编写”还是类似的内容。

The client '{MY EMAIL}' with object id '{GUID REMOVED}' does not have authorization to perform action 'Microsoft.Web/serverfarms/read' over scope '/subscriptions/{GUID REMOVED}/resourceGroups/appsvc_linux_centralus/providers/Microsoft.Web/serverfarms/appsvc_linux_centralus' or the scope is invalid. If access was recently granted, please refresh your credentials.

附加 2:我还一直在开发一个更基本的 Web 应用程序,它不包含节点包和空节点 hello world,并且这些部署似乎有效,这让我想知道这是否与部署的大小有关。我在 azure app 服务界面中创建了这两个应用程序,设置相同,但较大的应用程序(实际上是一个改编的 Microsoft Echo bot 示例)不会部署。较小的应用程序(Microsoft Hello World 节点示例)似乎可以工作。

【问题讨论】:

  • 这不是一个答案,但我正在采取另一种方法......我现在已经使用 filezilla 通过 FTP 路由进行了部署。我上次犯的错误是我忘记排除可能导致传输超时的 node_modules 文件夹。不应复制 node_modules。当使用 FTP 在 Azure 中部署节点应用程序时,您需要手动触发 NPM 安装。我是从 SSH 控制台执行此操作的。在您的应用名称和网络应用地址中的域名之间添加“scm”。 .scm.azurewebsites.com
  • 这似乎工作到目前为止,但我现在担心的是我的应用程序是打字稿和打字稿应用程序在根文件夹上没有 index.js 文件。它在 dist 中有 server.js。我希望 azure 能为我解决这个问题。

标签: node.js azure visual-studio-code


【解决方案1】:

我决定尝试使用 FTP 来部署我的应用程序而不是本地 git,因为我遇到了一些困难。我第一次使用 FTP 时犯的关键错误是我也尝试上传 node_modules 文件夹。这可能是由于连接超时而失败。

第二次尝试我决定使用 filezilla 作为客户端,因为有时文件资源管理器会显示不存在的重复项或缓存文件视图。

涉及的关键步骤...

  1. 下载 Filezilla 并按照以下步骤连接到您的 azure 站点 https://blogs.msdn.microsoft.com/kaushal/2014/08/01/microsoft-azure-web-site-connect-to-your-site-via-ftp-and-uploaddownload-files/

  2. 上传您的文件,但排除 node_modules 文件夹

  3. 转到您的 azure SSH 控制台(将 scm 添加到应用程序名称和域之间的应用程序网址...例如 .scm.azurewebites.com),然后单击顶部菜单上的 SSH。

  4. 在 SSH 控制台中输入以下命令 npm 安装

  5. 从 azure Web 应用门户页面重新启动您的 Web 应用。

本地 git、git hub 和 devops 管道选项可能比这条路线更容易,如果可以的话最好设置它们,但我无法让它们工作。

【讨论】:

    猜你喜欢
    • 2015-03-03
    • 2013-11-25
    • 2017-08-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多