以无根模式运行Docker

以无根模式运行Docker,docker,Docker,我试图在ubuntu虚拟机中以无根模式运行docker 我正在使用terraform脚本设置VM 我正在使用terraform运行模块执行命令和先决条件 但是,当我在这个运行模块中添加docker作为无根模式命令时,即使我切换了新用户,这些脚本也不会执行。 下面是我需要作为terraform运行模块中的另一个用户执行的命令 sudo apt get安装-y uidmap curl-fsSLhttps://get.docker.com/rootless |嘘 导出DOCKER\u主机=unix:/

我试图在ubuntu虚拟机中以无根模式运行docker

  • 我正在使用terraform脚本设置VM
  • 我正在使用terraform运行模块执行命令和先决条件
  • 但是,当我在这个运行模块中添加docker作为无根模式命令时,即使我切换了新用户,这些脚本也不会执行。 下面是我需要作为terraform运行模块中的另一个用户执行的命令
  • sudo apt get安装-y uidmap
    curl-fsSLhttps://get.docker.com/rootless |嘘
    导出DOCKER\u主机=unix:///run/user/1000/docker.sock
    systemctl——用户状态docker
    
  • 我收到一个错误,拒绝以root用户身份安装无根Docker
  • 我的目标是使用terraform run模块实现自动化
  • 是否有人可以帮助解决此问题,或者是否有其他解决方法

    提前谢谢

    我已经尝试过使用switch user和execute,但是这些命令仍然没有执行

    sudo apt get安装-y uidmap
    curl-fsSLhttps://get.docker.com/rootless |嘘
    导出DOCKER\u主机=unix:///run/user/1000/docker.sock
    systemctl——用户状态docker
    
    我想使用terraform运行模块或任何其他方式来自动执行此操作,但唯一的问题是,一旦提供了VM,就应该执行此操作。

    阅读脚本,其中写道:“此脚本应与非特权用户一起运行,并在$HOME/bin/下安装/设置Docker。”

    如果仍要安装,则只需学习如何阅读shell脚本,因为脚本中有以下部分:

    # User verification: deny running as root (unless forced?)
    if [ "$(id -u)" = "0" ] && [ -z "$FORCE_ROOTLESS_INSTALL" ]; then
        >&2 echo "Refusing to install rootless Docker as the root user"; exit 1
    fi