Docker USER_UID USER_GID 参数使用

3 min read

在 Linux 系统中,每个用户和组都有一个唯一的整数标识符,即 UID 和 GID。 当运行容器时,可以使用 USER_UID 和 USER_GID 参数来指定容器中运行的用户和组。

这样可以使容器中运行的程序拥有与宿主机上相应用户相同的权限和限制。例如,在本地有一个文件夹需要在容器中使用,那么可以在启动容器时将文件夹挂载到容器中,并通过这种方式来指定 UID 和 GID。

例如:

docker run --user 1000:1000 -v /path/on/host:/path/in/container -it myimage

这条命令会运行 myimage 镜像,并将容器中运行的用户设置为 UID 为 1000 和 GID 为 1000 的用户,并将宿主机上的 /path/on/host 目录挂载到容器中的 /path/in/container 中,所以容器中的用户就可以对这个目录进行读写操作了。

这样可以避免在容器中运行的程序具有过高的权限,从而保证容器中运行的程序安全性。