Azure 用于windows的Docker-文件共享

Azure 用于windows的Docker-文件共享,azure,docker,azure-storage,azure-storage-files,windows-container,Azure,Docker,Azure Storage,Azure Storage Files,Windows Container,我想在windows容器中装载文件共享。 我曾尝试挂载Azure文件存储共享,从一开始它运行良好。我可以浏览目录中的文件 但是,当我断开并重新连接容器powershell会话时,共享被标记为“不可用”。 此外,该共享对于作为我的入口点运行的可执行文件不可用 docker exec -it a4 powershell ************** PS C:\> net use z: \\XXXX.file.core.windows.net\dockerstore /

我想在windows容器中装载文件共享。 我曾尝试挂载Azure文件存储共享,从一开始它运行良好。我可以浏览目录中的文件

但是,当我断开并重新连接容器powershell会话时,共享被标记为“不可用”。 此外,该共享对于作为我的入口点运行的可执行文件不可用

    docker exec -it a4 powershell
    **************
    PS C:\> net use z: \\XXXX.file.core.windows.net\dockerstore /u:XXXXX XXXXXX== /P:Yes
    The command completed successfully.

    PS C:\> net use
    New connections will be remembered.


    Status       Local     Remote                    Network

    -------------------------------------------------------------------------------
    OK           Z:        \\XXXX.file.core.windows.net\dockerstore
                                                    Microsoft Windows Network
    The command completed successfully.


    exit

    ******************
    docker exec -it a4 powershell
    **********************
    PS C:\> net use
    New connections will be remembered.


    Status       Local     Remote                    Network

    -------------------------------------------------------------------------------
    Unavailable  Z:        \\XXXX.file.core.windows.net\dockerstore
                                                    Microsoft Windows Network
    The command completed successfully.
我还尝试在主机上安装网络驱动器,并将其安装到容器中。 但docker compose未能提出(访问问题?):

是否有其他选项可以持久装载外部文件共享? (我不知道有任何Docker卷驱动程序可用于windows。)

更多信息: 我在带有Hyper-V隔离的Windows 10上使用Docker for Windows

Docker版本:

    Client:
     Version:      17.03.1-ce
     API version:  1.27
     Go version:   go1.7.5
     Git commit:   c6d412e
     Built:        Tue Mar 28 00:40:02 2017
     OS/Arch:      windows/amd64

    Server:
     Version:      17.03.1-ce
     API version:  1.27 (minimum version 1.24)
     Go version:   go1.7.5
     Git commit:   c6d412e
     Built:        Tue Mar 28 00:40:02 2017
     OS/Arch:      windows/amd64
     Experimental: true

另一种解决方案是在docker文件中构建映像时装载卷。

共享仅存在于您创建的用户会话中,其他用户或其他会话将看不到它。它在桌面上的工作方式相同。请尝试改用$session对象
PS C:\>$session=New PSSession-ContainerId(获取容器ed).ID-RunAsAdministrator PS C:\>调用命令-session$session-Command{$env:mytest=“test”}PS C:\>调用命令-session$session-Command{Write Output$env:mytest}test
@GSA感谢您的输入。我想我会尝试使用CMDKEY向用户添加凭据,而改用UNC路径。将发布结果。您与容器有什么关系?是否有必要让用户在控制台上登录到容器?我有多个容器服务。Windows服务和web服务。其中一些需要访问Azure文件存储上的文件。在上面的问题中,我试图把它简单化。我不需要使用控制台会话来完成这项工作,它可以在脚本或Dockerfile中完成。最重要的是,运行服务的用户可以访问外部存储。@AndreasLudviksen试图做完全相同的事情,你让它工作了吗?
    Client:
     Version:      17.03.1-ce
     API version:  1.27
     Go version:   go1.7.5
     Git commit:   c6d412e
     Built:        Tue Mar 28 00:40:02 2017
     OS/Arch:      windows/amd64

    Server:
     Version:      17.03.1-ce
     API version:  1.27 (minimum version 1.24)
     Go version:   go1.7.5
     Git commit:   c6d412e
     Built:        Tue Mar 28 00:40:02 2017
     OS/Arch:      windows/amd64
     Experimental: true