【问题标题】:Azure Resource Manager Template - Deploy jhipster .war file and web.config to a webappAzure 资源管理器模板 - 将 jhipster .war 文件和 web.config 部署到 webapp
【发布时间】:2019-07-18 11:04:44
【问题描述】:

我正在尝试通过 ARM 模板将现有的 .war 编译的 java 应用程序 (jhipster) 部署到我的 azure webapp 中。我设法在没有 ARM 模板的情况下手动部署了 .war 文件,并且一切都运行良好,但是直到现在我一直在努力,而且我没有设法通过 ARM 模板让它工作。

对于我的手动 .war 部署的简短背景:我遵循了这里的答案: Can I deploy a jhipster 5.0.0-beta.0 application in azure?

这个问题是我的同事问的,@Peter Pan 的回答简直太棒了!现在我正在尝试制作一个部署脚本,它可以部署我的整个解决方案及其所有服务。

除了必须部署在 wwwroot 中的 .war 文件之外,我实际上还需要部署 web.config(在上面的链接中描述),与 .war 文件位于同一文件夹中,都在 wwwroot 中。我不知道该怎么做,而且我当前的 webapp 部署代码没有在 webapp 主机中复制我的 .war 文件。部署成功,但它只是一个空的默认 web 应用程序,并且该 web 应用程序的文件浏览器/FTP 上不存在 .war 文件。

这是描述我的 webapp 的 JSON:

    {
        "type": "Microsoft.Web/sites",
        "apiVersion": "2016-08-01",
        "name": "[variables('webAppName')]",
        "location": "West Europe",
        "dependsOn": [
            "[resourceId('Microsoft.Web/serverfarms', variables('serverfarms'))]"
        ],
        "kind": "app",
        "properties": {
            "enabled": true,
            "hostNameSslStates": [
                {
                    "name": "[concat(variables('webAppName'), '.azurewebsites.net')]",
                    "sslState": "Disabled",
                    "hostType": "Standard"
                },
                {
                    "name": "[concat(variables('webAppName'), '.scm.azurewebsites.net')]",
                    "sslState": "Disabled",
                    "hostType": "Repository"
                }
            ],
            "serverFarmId": "[resourceId('Microsoft.Web/serverfarms', variables('serverfarms'))]",
            "reserved": false,
            "scmSiteAlsoStopped": false,
            "clientAffinityEnabled": true,
            "clientCertEnabled": false,
            "hostNamesDisabled": false,
            "containerSize": 0,
            "dailyMemoryTimeQuota": 0,
            "httpsOnly": false,
            "resources": [
                {
                    "apiVersion": "2014-06-01",
                    "name": "MSDeploy",
                    "type": "Extensions",
                    "dependsOn": [
                        "[concat('Microsoft.Web/Sites/', variables('webAppName'))]",
                        "[concat('Microsoft.Web/Sites/', variables('webAppName'), '/config/web')]"
                    ],
                    "properties": {
                      "packageUri": "[variables('pathToWarFile')]"
                    }
                }
            ]
        }

任何帮助将不胜感激。谢谢!

【问题讨论】:

  • 你签出jhipster.tech/azure 了吗?我不使用 Azure,所以我不确定这是否是您正在寻找的
  • 感谢您的回答@JonRuddell,但该链接对我没有帮助。 Azure 资源管理器模板指的是通过部署脚本自动部署 Azure 资源。我需要通过这个部署脚本部署一个 .war。 jhipster 的链接描述了一种将应用程序手动部署到 azure 上的方法。

标签: jhipster azure-resource-manager arm-template azure-deployment azure-template


【解决方案1】:

看看这个模板:https://github.com/Azure/azure-quickstart-templates/blob/master/201-web-app-github-deploy/azuredeploy.json

您需要它来告诉应用程序从女巫存储库中提取应用程序文件。为此,您可以使用 GitHub、Azure DevOps 或任何其他存储库。如果存储库是安全的,则需要更多设置。

其他解决方案是使用 AzureDev Ops 部署模板,并在部署模板时发布您的应用程序。

  • 创建发布管道。
  • 在第一步中部署模板
  • 模板完成后,在第 2 步中发布应用程序。

希望对你有帮助

【讨论】:

    猜你喜欢
    • 2020-06-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-20
    • 2017-01-30
    相关资源
    最近更新 更多