37N*_*NPN 1 powershell azure jenkins
我正在尝试使用 Jenkins 配置管道并将其部署到 Azure。我正处于教程的最后一步:
https://learn.microsoft.com/en-us/azure/jenkins/tutorial-jenkins-deploy-web-app-azure-app-service
最后一步如下,我必须在 Azure CLI 中输入:
az group create --name yourWebAppAzureResourceGroupName --location region
az appservice plan create --name appServicePlanName --resource-group rgname --is-linux
az webapp create --name webAppName --resource-group rgName --plan appServicePlanName --runtime "java|1.8|Tomcat|8.5"
Run Code Online (Sandbox Code Playgroud)
最后一个命令给了我错误:
“1.8”不被识别为内部或外部命令、可操作程序或批处理文件。
所以我想也许 Tomcat 没有安装在我的 Azure VM(Linux 计算机)上。所以我使用了下一个教程来安装Tomcat:
https://www.howtoforge.com/tutorial/how-to-install-apache-tomcat-8-5-on-ubuntu-16-04/
之后我尝试再次执行 --runtime 命令,但仍然遇到相同的错误。我不知道如何解决这个问题。我希望有人能帮助我解决这个问题。
我尝试检查 webapp list-runtimes 并得到以下列表:
“java|1.8|Tomcat|8.5”在这里。我已经尝试了所有版本,但没有成功。
编辑:它在 Azure Cloud Shell 中工作,但出现另一个错误:
Linux Runtime 'java|1.8|Tomcat|8.5' is not supported.Please invoke 'list-runtimes' to cross check
Run Code Online (Sandbox Code Playgroud)
我已经尝试了所有运行时版本,但仍然出现此错误。我也尝试过用双引号
我打赌您已经解决了问题,但以防其他人发现此问题并使用PowerShell运行Azure CLI命令。这对我有用。
问题在于 PowerShell在评估整行时如何解释参数'|'内的管道、 、 字符。--runtime
添加--%到命令的开头以关闭表达式的 PowerShell 计算,如此处代码块中的建议。
注意:这也将阻止 PowerShell 评估命令内的任何变量。您可以做的是将 移动--runtime到行尾来解决这个问题,例如像这样
az webapp create -g $rg -p $appPlanName -n $appName --deployment-local-git --% --runtime "DOTNETCORE|3.0"
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
881 次 |
| 最近记录: |