如何在 Docker Desktop (WSL2) 中挂载大容量?

时间:2021-02-16 12:22:20

标签: docker docker-compose docker-desktop wsl-2 plex

我是 Docker 的新手,并尝试使用 Docker 桌面和 WSL2 在 Windows 上设置 Plex 媒体服务器 (https://docs.linuxserver.io/images/docker-plex)。我使用如下所示的 yml 文件使用了 docker-compose。我需要将我的媒体文件夹(在 Windows 驱动器 F: 上)安装到 docker 容器中,原因很明显。

我读到建议将数据加载到 WSL(https://docs.docker.com/docker-for-windows/wsl/#best-practiceshttps://stackoverflow.com/a/64238886/6149322)中,但是由于媒体库非常大(几 GB),因此需要将其保存在不同的硬盘。因此,我认为我不能将其移动到 WSL 文件系统。

当我尝试运行 hours=[9,28,11,23,13,14,15,16,17,9,15,1,2,3,4] y = sorted(hours) consecutive_hours = 0 for num in hours: if hours.index(num) == len(hours)-1: break elif hours[hours.index(num)+1] == num + 1: consecutive_hours += 1 if consecutive_hours > 4: break else: consecutive_hours = 0 if consecutive_hours == 4: print("The list", hours, "contains more than 4 consecutive hours.") else: print("The list",hours, "does not contain more than 4 consecutive hours.") 时,我收到以下错误消息和来自 Docker 桌面的弹出窗口:(“Zugriff verweigert”是德语,意思是“访问被拒绝”)

docker-compose -f "docker-compose.yml" up -d --build

enter image description here

你对我有什么想法或提示吗?非常感谢!


docker-compose.yml 文件:

Creating plex ... error

ERROR: for plex  Cannot create container for service plex: Zugriff verweigert

ERROR: for plex  Cannot create container for service plex: Zugriff verweigert
ERROR: Encountered errors while bringing up the project.

1 个答案:

答案 0 :(得分:0)

我想我已经解决了这个问题,如下所示。我不完全确定哪一步是关键...

  • 在 PowerShell 中使用命令 docker-desktop-data 将“Ubuntu”设置为我的默认 wsl 系统(而不是 wsl --set-default Ubuntu
  • 将我的 docker-compose.yml 复制到 WSL 文件系统中。您可以通过在 Windows 资源管理器的路径文件中键入 \\WLS$ 在 Windows 资源管理器中挂载 WSL 系统。
  • 打开 Ubuntu shell 并从那里运行 docker-compose 命令。现在它适用于以下体积定义
volumes:
      - /mnt/f/Plex:/config
      - /mnt/f/Serien:/tv
      - /mnt/f/Filme:/movies

希望这可以帮助任何有类似问题的人:)