我想在 docker 容器中以 root 身份执行 perl 脚本(主机上的 SUDO),并在 perl 脚本中获取真实的用户 ID。
例如,下面的执行应该使 myscript.pl 能够获取真实的 userId(在这种情况下为 mat),而不必将其作为附加参数显式传递给 myscript.pl..(从主机调用时容器内的脚本应该找到调用脚本的真实用户)
[mat@dev01-nrg02 ~]$ sudo docker exec -it MY_API_LAYER myscript.pl
排除在容器启动期间设置为 docker 环境变量,因为
- 该脚本将由任何用户执行,我需要获取该用户的真实 ID。
- docker 容器是使用 Init 服务启动的……所以从技术上讲,这意味着也不可能设置任何用户详细信息……
还..
我不想让脚本的用户通过他们的 userId 来打扰他们(这可能看起来是多余的,如果提供了这样的选项,他们也可以传递任何 Id..)
请让我知道是否有人遇到过这样的问题并解决了?