如何在 LXD 2.0 中以非 root 用户身份打开容器的控制台

如何在 LXD 2.0 中以非 root 用户身份打开容器的控制台

我是容器方面的新手,正在使用 Alpine3.4 容器在 ubuntu-16.04 主机上摆弄 LXD-2.0。问题:

  1. 如何用非root用户打开容器的控制台?
lxc exec mycontainer bash

这会让我以 root 身份直接进入容器。但是,当我打开控制台时,我首先想成为非 root 用户。

  1. 像我们通常在非容器环境中那样,以非 root 用户身份在容器内运行应用程序是一种最佳实践吗?(即使容器是在“非特权”模式下启动的)。

答案1

  1. exec 将以 root 身份执行命令。但是,当然,由于作为 root,您可以通过 su 命令以任何用户身份“登录”,因此您可以执行 su:

lxc exec mycontainer su-mortaluser

另一种方法是安装 sshd 并使用 ssh 命令登录容器,就像登录任何其他服务器一样。

  1. 将容器视为普通服务器并仅在需要时通过例如“sudo”提升您的权限确实是一种很好的做法。

相关内容