我正在努力在没有root访问权限的Ubuntu机器上安装Azure CLI。
说明here假设我们具有root访问权限(或合理的sudo访问权限)。
我正在尝试在Ubuntu机器上运行它(由IBM DevOps工具链提供 - 永远不会授予root访问权限),执行sudo命令会导致:
AZ_REPO=$(lsb_release -cs)
echo "deb [arch=amd64] https://packages.microsoft.com/repos/azure-cli/ $AZ_REPO main" | \
sudo tee /etc/apt/sources.list.d/azure-cli.list
这导致 sudo:没有tty存在且没有指定askpass程序
Why do I need a tty to run sudo?有一些答案,但我无法使用它们,因为我无法控制通过ssh登录shell。
我正在使用IBM Cloud的DevOps工具链将应用程序部署到IBM Cloud和Azure。
DevOps工具链为我提供了一个执行命令的shell。
还有其他选择
答案 0 :(得分:1)
假设您已安装所需的先决条件,您可以使用script或plain'ole pip来安装Azure CLI(pip install azure-cli)。就个人而言,我经常使用docker container。
答案 1 :(得分:1)
您是否尝试过运行脚本as documented,
curl -L https://aka.ms/InstallAzureCli | bash
我不明白为什么要安装az
需要sudo。安装脚本下载python脚本(this one)并运行它。这个脚本基本上
~/lib/azure-cli
创建一个虚拟环境pip install azure-cli
~/bin/az
的{{1}}编写一个运行az
的shell脚本,并为其赋予一些权限python -m azure.cli
答案 2 :(得分:0)
根据我的知识,这是可能的。需要root权限。您可以检查此answer以解决您的问题,但我认为您应该拥有root权限才能执行此操作。
如果可能,我建议您使用Azure Cloud Shell在Azure上运行cli命令。