在没有root访问权限的情况下在Ubuntu上安装Azure CLI的替代方法是什么?

时间:2018-03-23 10:42:10

标签: azure ubuntu azure-cli azure-cli2

我正在努力在没有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。

还有其他选择

3 个答案:

答案 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)并运行它。这个脚本基本上

  1. 下载virtualenv
  2. ~/lib/azure-cli创建一个虚拟环境
  3. 在该虚拟环境上调用pip install azure-cli
  4. 向名为~/bin/az的{​​{1}}编写一个运行az的shell脚本,并为其赋予一些权限
  5. 将完成情况(标签)添加到python -m azure.cli

答案 2 :(得分:0)

根据我的知识,这是可能的。需要root权限。您可以检查此answer以解决您的问题,但我认为您应该拥有root权限才能执行此操作。

如果可能,我建议您使用Azure Cloud Shell在Azure上运行cli命令。