我用的是 docker for mac ,使用如下的 Dockerfile 创建了一个 ubuntu 的 docker toolchain
可以看到,我并没有针对用户名做任何设置
配置里面长这样子:
点击上面的划圈的地方,显示连接方式是 docker for mac:
我的疑问是,用这种方式连进去 docker ,用里面的工具链,使用的用户是谁呢?
因为我在这个 docker 里面,用 root 用户进去,创建了一个 git 远程仓库的公钥,然后添加到我远程仓库,发现,toolchain 运行 cmake 的时候,因为权限不够,无法从远程仓库 pull 下来
1
seanzxx 2022-03-05 00:52:33 +08:00
难道不应该是 root 吗?
docker run ubuntu:18.04 id uid=0(root) gid=0(root) groups=0(root) |
2
vigossliao 2022-03-05 11:40:52 +08:00
题外话 楼主主题是啥
感觉挺好看的 |
3
2NUT 2022-03-05 14:24:35 +08:00
你没指定就是 docker 后台 linux 内核里的 root 用户, 容器内部的 root 拥有和宿主机一样的 UID
错误提示说 这个用户 uid501 没有对应的 容器内用户, 尝试用 USER xxx 在 dockerfile 里指定用户看看 |
4
2NUT 2022-03-05 17:37:43 +08:00
linux 的 root 一般就是 uid0, 你这个 uid501 是 macos 上的登录账户
https://unix.stackexchange.com/questions/358994/why-is-the-primary-admin-uid-501 https://www.cnblogs.com/williamjie/p/10321283.html |
5
movq OP @vigossliao monoka pro
|