在WSL中使用az aks browse命令无法自动打开浏览器,只显示JSON而不是仪表板

48次阅读
没有评论

问题描述

在使用WSL2 Ubuntu 18.04上的Azure CLI时,发现在运行az aks browse命令时,无法自动打开浏览器,而是只显示JSON而不是仪表板。用户在Mac Mini上使用相同的命令时没有问题,这可能是WSL2的问题。

解决方案

请注意以下操作注意版本差异及修改前做好备份。

方案1

根据用户的回答,可以通过设置环境变量来解决az aks browse命令无法自动打开浏览器的问题。以下是解决方案的步骤:
1. 在WSL中打开终端。
2. 运行以下命令设置BROWSER环境变量,将其设置为你喜欢的浏览器的路径(例如Google Chrome):

export BROWSER="/mnt/c/Program Files (x86)/Google/Chrome/Application/chrome.exe"
  1. 运行az aks browse命令,它将在新的浏览器标签页中打开仪表板。
  2. 如果你希望在每个会话中都自动设置BROWSER环境变量,可以将上述命令添加到你的.bashrc文件或配置文件中。

方案2

根据另一个回答,这个问题是由于az-cli无法正确检测交互式会话导致的。为了解决这个问题,你需要修改.bashrc文件并使用DISPLAY=:0前缀来运行浏览器命令。以下是解决方案的步骤:
1. 在WSL中打开终端。
2. 运行以下命令编辑.bashrc文件:

nano ~/.bashrc
  1. 在文件的末尾添加以下行,将BROWSER环境变量设置为你喜欢的浏览器的路径(例如Google Chrome):
export BROWSER="/c/Program Files (x86)/Google/Chrome/Application/chrome.exe"
  1. 保存并关闭文件。
  2. 运行以下命令以使用DISPLAY=:0前缀运行az aks browse命令:
DISPLAY=:0 az aks browse -g <groupname> -n <clustername>

这将在新的浏览器标签页中打开仪表板。

请注意,这个问题可能是az-cli的一个bug,因此这些解决方案可能只是临时的解决方法。你可以关注az-cli的更新,以获取更正的版本。

以上是解决az aks browse命令无法自动打开浏览器并只显示JSON而不是仪表板的两种解决方案。希望能帮助到你!

正文完