如何使用Docker for Windows with WSL2(Windows 10 v.2004)在Docker compose中使用命名卷绑定

如何使用Docker for Windows with WSL2(Windows 10 v.2004)在Docker compose中使用命名卷绑定,docker,docker-compose,windows-subsystem-for-linux,docker-volume,Docker,Docker Compose,Windows Subsystem For Linux,Docker Volume,我想装载一个卷,以便在docker中启动的不同容器之间共享。但我想将该卷装载到一个特定的文件夹中,比如:/home/myuser/durable 我是这样做的: 提前定义docker卷: 定义docker-compose.yml并将共享卷用作外部卷: 我第一次执行docker compose up时,它运行平稳 但是,如果我用docker compose停止容器并再次尝试向上移动它们,它将无法表示它无法装入卷 这是顺序: docker-compose up --完好无损 然后 正在停止切分

我想装载一个卷,以便在docker中启动的不同容器之间共享。但我想将该卷装载到一个特定的文件夹中,比如:/home/myuser/durable

我是这样做的:

  • 提前定义docker卷:
  • 定义docker-compose.yml并将共享卷用作外部卷:
  • 我第一次执行docker compose up时,它运行平稳

    但是,如果我用docker compose停止容器并再次尝试向上移动它们,它将无法表示它无法装入卷

    这是顺序:

    docker-compose up  
    
    --完好无损 然后

    正在停止切分节点2\u 1。。。完成 正在停止切分节点1\u 1。。。完成 正在删除切分节点2\u 1。。。完成 正在删除切分节点1\u 1。。。完成 删除网络分片\u默认值

    salva@ESXPS13JSALVADOR:~/projects/sharding$ docker-compose up
    
    使用默认驱动程序创建网络“sharding_default” 正在创建切分节点1\u 1。。。错误 正在创建切分节点2\u 1

    错误:对于分片节点1,1无法启动服务节点1:装载卷“/var/lib/docker/volumes/myOwnVolumeBind/_data”时出错:装载本地卷失败:装载/运行/桌面/mnt/host/wsl/docker桌面绑定装载/Ubuntu-20.04/46565b0cdfb27e1c6f9311ee05188e1104e98034a9b364fa3ae2db8076f54f93:/var/lib/docker/volumes/myOwnVolumeBind/_数据,标志:0x100正在创建分片节点2\u 1。。。错误

    错误:对于分片节点2,1无法启动服务节点2:装载卷“/var/lib/docker/volumes/myOwnVolumeBind/_data”时出错:装载本地卷失败:装载/运行/桌面/mnt/host/wsl/docker桌面绑定装载/Ubuntu-20.04/46565b0cdfb27e1c6f9311ee05188e1104e98034a9b364fa3ae2db8076f54f93:/var/lib/docker/volumes/myOwnVolumeBind/_数据,标志:0x1000:没有这样的文件或目录

    错误:对于节点1,无法启动服务节点1:装载卷“/var/lib/docker/volumes/myOwnVolumeBind/_data”时出错:装载本地卷失败:装载/运行/桌面/mnt/host/wsl/docker桌面绑定装载/Ubuntu-20.04/46565b0cdfb27e1c6f9311ee05188e1104e98034a9b364fa3ae2db8076f54f93:/var/lib/docker/volumes/myOwnVolumeBind/_数据,标志:0x1000:没有这样的文件或目录

    错误:对于节点2,无法启动服务节点2:装载卷“/var/lib/docker/volumes/myOwnVolumeBind/_数据”时出错:装载本地卷失败:装载/运行/桌面/mnt/host/wsl/docker桌面绑定装载/Ubuntu-20.04/46565B0CDFB27E1C6F9311EE05188E1104E98034A9B364FA3AE8076F54F93:/var/lib/docker/volumes/myOwnVolumeBind/_数据,标志:0x1000:没有这样的文件或目录 错误:在启动项目时遇到错误


    我不知道这里发生了什么。为什么它能够在第一次装入卷,但不能在接下来的时间装入卷。。。。顺便说一下,我不清楚文件应该在哪里:/var/lib/docker/volumes/myownlumebind/\u data

    也许我做得不对。我的目标是能够决定我的Ubuntu发行版(WSL2)的哪个文件夹将存储我的持久数据。如果有更好的方法,请告诉我

    有什么想法吗


    提前感谢

    在最近两个Docker Desktop Edge版本中,WSL 2上的卷有一些错误修复。您正在运行哪个版本的Docker Desktop?Docker Desktop社区:2.3.0.4(46911)引擎:19.03.12
    docker-compose up  
    
    salva@ESXPS13JSALVADOR:~/projects/sharding$ docker-compose down
    
    salva@ESXPS13JSALVADOR:~/projects/sharding$ docker-compose up