首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Docker在主机窗口中组成卷

Docker在主机窗口中组成卷
EN

Stack Overflow用户
提问于 2022-07-10 23:02:34
回答 2查看 235关注 0票数 0

我有用于给定容器的带有卷部分的docker-组合文件:

代码语言:javascript
复制
video-streaming:
image: video-streaming
build:
  context: ./video-streaming
  dockerfile: Dockerfile-dev
container_name: video-streaming
volumes:
    - /tmp/history/npm-cache:/root/.npm:z

我正在windows上运行docker,并且映像是基于linux的。当我输入容器并将文件添加到/root/..npm,然后关闭容器并再次运行它时,该文件仍然存在,因此这个卷可以工作。但是问题是我在哪里可以找到它在Windows主机上的位置呢?

EN

回答 2

Stack Overflow用户

发布于 2022-07-10 23:31:56

您应该在C:\ProgramData\docker\volumes中找到这些卷。文件名将是一个散列,您可以使用docker inspect进行检查。

如果没有,那么请注意,您只是将一个主机目录/tmp/history/npm-cache安装到您的容器。这个目录是您的卷。

票数 0
EN

Stack Overflow用户

发布于 2022-07-11 08:30:24

在windows中使用停靠器时,问题是您使用的是旧的docker工具箱还是使用WSL/WSL 2的较新的工具箱

Docker桌面配置Linux容器和WSL/WSL 2

对接引擎实际上不在窗口上运行,但是在WSL实例中,docker桌面使停靠命令在窗口上可用,以便于使用。因此,卷可能在那个WSL实例(linux)中。

您可以通过在powershell中键入wsl -l来找出您有哪些WSL实例。它们的文件系统可在windows上的\\\wsl$路径中使用.

在您的示例中,卷没有命名,它位于您为其指定的确切位置。

/tmp/history/npm-cache,但是在安装坞引擎的WSL实例中。

通过WSL

在powershell中编写wsl ls /tmp/history,您应该可以在那里看到npm-cache

wsl命令允许在实际linux实例(默认实例)上运行管道linux命令,该实例可能是运行坞引擎的实例。

或者,只需键入wsl并转到路径cd /tmp/history,就可以连接到linux。

一旦进入wsl实例,您就可以编写explorer.exe .在该位置(在windows上)打开资源管理器。

注意,路径总是以\\wsl$开头,这样您就可以在窗口上找到该路径,并看到所有wsl实例及其文件系统,尝试在资源管理器中搜索"npm-cache“,您可能会找到它。

通过Docker命令

docker volume ls将为您提供所有可用的卷。您的名字没有命名,所以它可能是'UUID‘中的一个。您可以检查每个卷以找到它的位置(可能还在wsl实例中),您可以看到每个卷都有一个指向卷的位置(在wsl实例中)的字段。

未命名卷是以来自您的用户的不同权限创建的,因此您可能需要sudo通过wsl终端与它们交互。

如果它通过\\wsl$上的windows文件资源管理器,您可能不需要额外的权限。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72932420

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档