我有一个Docker镜像,其中创建了一个名为builder的非root用户。
应该在容器内运行的应用程序使用unix who
命令。
由于某种原因,在容器内它返回一个空字符串:
builder@2dc3831c558b:~$ who
builder@2dc3831c558b:~$
由于实现细节的原因,我无法使用whoami
命令。
(我正在Debian Jessie上使用Docker 1.6.2)
编辑(关于为什么使用“who”命令的其他细节):
我使用带有参数am i
的who
命令,也就是who am i
。这应该返回最初进行登录的用户。例如,sudo who am i
返回builder
,而sudo whoami
返回root
。
who
显示谁已经登录。我猜测容器无法识别用户是否已登录,但实际上我和你一样惊讶。你尝试过运行ssh
服务器,通过ssh登录,并运行who
命令吗? - undefinedwho
命令就可以工作了。谢谢! - undefined