无法在Docker Alpine中添加具有高UID的用户

安东尼·O:

我正在尝试UID 1340816314在Alpine Linux Docker容器内创建一个新用户,以使该用户与UID主机上的特定用户匹配。

问题是adduser: number 1340816314 is not in 0..256000 range即使我通过遵循adduser手册页重新定义UID_MAX内部的值,我也要面对我不认为它会产生任何影响,因为Alpine中命令来自BusyBox/etc/login.defsadduser

这是我尝试执行的操作的日志:

$ docker run -it --rm alpine:3.4 sh
/ # adduser -D -g '' -u 1340816314 user
adduser: number 1340816314 is not in 0..256000 range
/ # echo "UID_MAX 1340816314" > /etc/login.defs
/ # adduser -D -g '' -u 1340816314 user
adduser: number 1340816314 is not in 0..256000 range
/ # echo "UID_MAX 1340816315" > /etc/login.defs
/ # adduser -D -g '' -u 1340816314 user
adduser: number 1340816314 is not in 0..256000 range

您知道如何UID在Docker容器中添加Alpine Linux中的大型用户吗?

安东尼·O:

这是一个有效但不可行的解决方法,通过手动创建用户,将其$UID_TO_SET用作包含UID要设置的上限的bash变量

# Create user
echo "user:x:$UID_TO_SET:$UID_TO_SET::/home/user:" >> /etc/passwd
## thanks for http://stackoverflow.com/a/1094354/535203 to compute the creation date
echo "user:!:$(($(date +%s) / 60 / 60 / 24)):0:99999:7:::" >> /etc/shadow
echo "user:x:$UID_TO_SET:" >> /etc/group
mkdir /home/user && chown user: /home/user

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章