我正在尝试在mcr.microsoft.com/windows:1809映像中装入目录,但是如果创建另一个用户,它将失败。
我使用以下Dockerfile:
FROM mcr.microsoft.com/windows:1809
RUN NET USER mynewuser /add
RUN NET LOCALGROUP Administrators /add mynewuser
USER mynewuser
构建容器后,我使用docker run -it --rm -v ${PWD}:C:\data containername
运行它。
但是,当我尝试CD进入数据文件夹时,出现以下错误:
C:\>cd data
Access is denied.
当我在容器内使用Powershell时,可以将CD插入数据文件夹,但dir命令失败:
PS C:\> cd data
PS C:\data> dir
dir : Access to the path 'C:\data' is denied.
At line:1 char:1
+ dir
+ ~~~
+ CategoryInfo : PermissionDenied: (C:\data:String) [Get-ChildItem], UnauthorizedAccessException
+ FullyQualifiedErrorId : DirUnauthorizedAccessError,Microsoft.PowerShell.Commands.GetChildItemCommand
使用mcr.microsoft.com/windows/servercore:1809映像时,一切正常,并且与mcr.microsoft.com/windows:1809容器一起使用也可以。
即使新用户应该已经具有管理员权限,我是否仍需要为该用户设置权限?这是否是映像的错误?