如何使用Docker for Windows与WSL2Windows 10 v.2004一起在Docker中使用命名卷绑定Windows 10 v.2004

问题描述

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

我设法做到了:

  1. 预先定义docker卷:
   docker volume create --driver local \
   --opt type=none \
   --opt o=bind \
   --opt device=/home/mysuser/durable \
   myOwnVolumeBind
  1. 定义docker-compose.yml并将共享卷用作外部卷:
version: '3.7'

services:
  node1:
    build: ./config/node1
    image: myImage
    hostname: host1
    environment:
       - ISC_data_dirECTORY=/dur/node2
    volumes:
     - myOwnVolumeBind:/dur
     - ./config:/config
  node2:
    build: ./config/node2
    image: myImage
    hostname: host2
    environment:
       - ISC_data_dirECTORY=/dur/node2
    volumes:
     - myOwnVolumeBind:/dur
     - ./config:/config
volumes:
  myOwnVolumeBind:
    external: true

我第一次执行docker-compose,它运行平稳。

但是,如果我停止使用docker-compose停止容器并尝试再次将其升起,它不会说无法装入卷...

这是顺序:

docker-compose up  

-完成并正常 然后...

salva@ESXPS13JSALVADOR:~/projects/sharding$ docker-compose down

停止sharding_node2_1 ...完成 停止sharding_node1_1 ...完成 删除sharding_node2_1 ...完成 删除sharding_node1_1 ...完成 删除网络sharding_default

salva@ESXPS13JSALVADOR:~/projects/sharding$ docker-compose up

使用认驱动程序创建网络“ sharding_default” 创建sharding_node1_1 ...错误 正在创建sharding_node2_1 ...

错误:用于sharding_node1_1无法启动服务节点1:安装卷'/ var / lib / docker / volumes / myOwnVolumeBind / _data'时出错:无法安装本地卷:mount / run / desktop / mnt / host / wsl / docker -desktop-bind-mounts / Ubuntu-20.04 / 46565b0cdfb27e1c6f9311ee05188e1104e98034a9b364fa3ae2db8076f54f93:/ var / lib / docker / volumes / myOwnVolumeBind / _data,标志:0x100正在创建sharding_node2_1 ...

错误:用于sharding_node2_1无法启动服务节点2:安装卷'/ var / lib / docker / volumes / myOwnVolumeBind / _data'时出错:无法安装本地卷:mount / run / desktop / mnt / host / wsl / docker -desktop-bind-mounts / Ubuntu-20.04 / 46565b0cdfb27e1c6f9311ee05188e1104e98034a9b364fa3ae2db8076f54f93:/ var / lib / docker / volumes / myOwnVolumeBind / _data,标志:0x1000:无此类文件或目录

错误:对于节点1无法启动服务节点1:在安装卷'/ var / lib / docker / volumes / myOwnVolumeBind / _data'时出错:无法安装本地卷:mount / run / desktop / mnt / host / wsl / docker -desktop-bind-mounts / Ubuntu-20.04 / 46565b0cdfb27e1c6f9311ee05188e1104e98034a9b364fa3ae2db8076f54f93:/ var / lib / docker / volumes / myOwnVolumeBind / _data,标志:0x1000:无此类文件或目录

错误:对于节点2无法启动服务节点2:在安装卷'/ var / lib / docker / volumes / myOwnVolumeBind / _data'时出错:无法安装本地卷:mount / run / desktop / mnt / host / wsl / docker -desktop-bind-mounts / Ubuntu-20.04 / 46565b0cdfb27e1c6f9311ee05188e1104e98034a9b364fa3ae2db8076f54f93:/ var / lib / docker / volumes / myOwnVolumeBind / _data,标志:0x1000:无此类文件或目录 错误:启动项目时遇到错误


我不知道这是怎么回事。为什么它能够第一次安装该卷,但随后却无法安装....顺便说一下,尚不清楚我应该将文件放在哪里:/ var / lib / docker / volumes / myOwnVolumeBind / _data

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

有什么主意吗?

预先感谢

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)