Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/docker/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Docker 码头集装箱里谁是空的_Docker_Docker Compose - Fatal编程技术网

Docker 码头集装箱里谁是空的

Docker 码头集装箱里谁是空的,docker,docker-compose,Docker,Docker Compose,有人知道为什么docker容器没有显示“who”命令的输出吗 我认为容器在使用docker compose“user”值运行时应该显示有效的用户条目 docker compose: user: 95230 集装箱内: $ id uid=95230 gid=0(root) groups=0(root) $ who $ $ whoami whoami: cannot find name for user ID 95230 $ echo "${USER}:x:95230:201::/home/$US

有人知道为什么docker容器没有显示“who”命令的输出吗

我认为容器在使用docker compose“user”值运行时应该显示有效的用户条目

docker compose:

user: 95230
集装箱内:

$ id
uid=95230 gid=0(root) groups=0(root)
$ who
$
$ whoami
whoami: cannot find name for user ID 95230
$ echo "${USER}:x:95230:201::/home/$USER:/bin/bash" >> /etc/passwd
$ whoami
mmopuru
$ who
$

有没有办法修复没有输出的“who”?

who
命令调用系统内核中的函数,也就是说,您得到的结果取决于主机(而不是容器本身)。换句话说,您正试图访问一些您不允许访问的内容,这是行不通的

更新: 如回答中所述,以下可能是一个解决方法(我没有测试它):

注册表配置存储在客户机中,因此像cat~/.docker/config.json这样简单的东西将为您提供所需的答案

docker info | grep用户名应提供此信息

可能重复的