You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

Windows 10环境下Docker如何选择文件夹存储文件?

我完全懂你现在的困扰——Windows 10上用Docker跑Linuxserver的镜像,很多教程都是针对Linux环境的,路径映射和共享驱动器这块确实容易踩坑。我来一步步帮你理清楚怎么把配置文件和下载内容存到你指定的位置:

第一步:先确保Docker挂载了你要用的Windows共享驱动器

Linux容器要访问Windows本地硬盘,首先得让Docker授权访问对应的驱动器:

  • 打开Docker Desktop,点击右上角的设置图标(齿轮)
  • 找到Resources > File Sharing选项
  • 勾选你打算用来存放配置和下载文件的驱动器(比如D盘),然后点击「Apply & Restart」让设置生效
  • 如果勾选后出现权限报错,试试重启Docker或者确认当前Windows用户对该驱动器有读写权限
第二步:搞懂容器内路径和Windows本地路径的映射逻辑

你提到的容器内/home/...路径是Linux容器内部的目录,默认和Windows本地不关联。Linuxserver的镜像通常会把配置文件放在/config目录,下载类路径放在/downloads(不同镜像可能有差异,比如Sonarr是/tv、Radarr是/movies,可以查对应镜像的说明)。

我们需要用Docker的-v参数(或者Docker Compose的volumes字段)把Windows本地文件夹和容器内的指定目录绑定,格式是:

Windows本地路径:容器内目标路径
第三步:具体操作示例(以Jackett为例)

方式1:用Docker命令行启动

直接在命令提示符或PowerShell里运行:

docker run -d \
  --name=jackett \
  -e PUID=1000 \
  -e PGID=1000 \
  -e TZ=Asia/Shanghai \
  -p 9117:9117 \
  -v D:/Docker/Jackett/config:/config \
  -v D:/Downloads/Jackett:/downloads \
  --restart unless-stopped \
  lscr.io/linuxserver/jackett:latest

这里的-v D:/Docker/Jackett/config:/config就是把Windows本地的D:\Docker\Jackett\config文件夹,映射到容器内的/config目录(Jackett的配置会存在这里);-v D:/Downloads/Jackett:/downloads则是把下载目录绑定到Windows的指定文件夹。

方式2:用Docker Compose(更推荐,方便管理)

创建一个docker-compose.yml文件,内容如下:

version: "3.8"
services:
  jackett:
    image: lscr.io/linuxserver/jackett:latest
    container_name: jackett
    environment:
      - PUID=1000
      - PGID=1000
      - TZ=Asia/Shanghai
    volumes:
      - D:/Docker/Jackett/config:/config
      - D:/Downloads/Jackett:/downloads
    ports:
      - 9117:9117
    restart: unless-stopped

然后在该文件所在的目录下,运行docker-compose up -d就能启动容器了。

关于容器内/home路径的补充说明

Linuxserver的绝大多数镜像不会把核心配置或下载内容放在/home/xxx目录下,但如果确实需要映射这个路径,操作逻辑和上面一样:
比如要把Windows的D:\Docker\MyApp\userhome映射到容器内的/home/user,只需在启动命令里加:

-v D:/Docker/MyApp/userhome:/home/user
几个注意点
  • Windows路径可以用正斜杠/代替反斜杠\,避免命令行里的转义问题
  • PUID和PGID在Windows下一般设为1000即可(对应默认用户ID),如果遇到权限问题可以调整,但大部分场景下1000足够
  • 最好提前在Windows本地创建好目标文件夹,避免容器自动创建时出现权限异常

内容的提问来源于stack exchange,提问作者Stack Johan

火山引擎 最新活动