如何使用Windows Containers(而不是Linux容器)在Docker for Windows 10中创build数据卷

伙计们,我的操作系统是Windows 10,我正在运行Docker版本17.06.0-ce-win19。 我有SQL Server Express运行在Windows容器中,我想将SQL数据保存在我希望位于我的主机文件系统中的数据卷中。 我不知道如何去创build这个数据卷并将其与我的容器相关联。

我看到的任何示例都是在Docker / Settings下使用Linux容器和“共享驱动器”属性。 运行Windows容器(Hyper-V)时,没有“共享驱动器”设置。

使用以下命令创build一个卷,比如data1:docker volume create data1

将在位于C:\ ProgramData \ Docker \ volumes \ data1的主机中创build一个文件夹

现在,如果你打算启动一个sql server express容器,并且希望将你的数据存储在这个卷“data1”中,你可以这样做:

docker run -d -p 1433:1433 -e sa_password = Nv7EtbMh8qLRM9s2 -v C:/ ProgramData / Docker / volumes / data1:C:/ data1 -e ACCEPT_EULA = Y –isolation = hyperv microsoft / mssql-server-windows-express

其中-v C:/ ProgramData / Docker / volumes / data1:C:/ data1将C:/ ProgramData / Docker / volumes / data1中的data1卷映射到c:/ data1容器中的新文件夹

现在,当您在c:/ data1中的容器中创build数据文件时,它们将保留到主机OS文件夹C:/ ProgramData / Docker / volumes / data1