You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Portainer卷上传路径错误问题求助

Portainer卷浏览上传文件路径不符问题排查与解决

问题场景

使用Portainer CE 2.18.3,服务器配置:

  • / - 8GB系统盘
  • /srv/docker - 50GB Docker数据盘

已通过/etc/docker/daemon.json修改Docker数据根目录为/srv/docker/images:

{ 
   "data-root": "/srv/docker/images"
}

Docker功能正常,通过Portainer创建的test_volume卷,Portainer显示挂载点为/srv/docker/images/volumes/test_volume/_data,主机端也能看到该目录。但使用Portainer卷浏览上传test.txt时,文件实际被写入/var/lib/docker/volumes/test_volume/_data/test.txt(默认路径),而非自定义数据目录。

解决办法

1. 修正Portainer容器挂载配置

Portainer运行时若仅挂载/var/run/docker.sock,容器内部默认读取的Docker数据目录仍是/var/lib/docker,导致上传路径错位。需将主机自定义数据目录挂载到容器内对应路径:

停止现有Portainer容器并重新启动:

docker stop portainer && docker rm portainer

docker run -d -p 9000:9000 \
--name portainer \
--restart=always \
-v /var/run/docker.sock:/var/run/docker.sock \
-v /srv/docker/images:/var/lib/docker \
-v portainer_data:/data \
portainer/portainer-ce:2.18.3

此操作让Portainer容器内部的/var/lib/docker映射到主机的自定义数据目录,确保路径一致。

2. 验证Docker配置生效

确认Docker守护进程已加载新配置:

systemctl daemon-reload
systemctl restart docker

执行以下命令检查当前数据根目录:

docker info | grep "Docker Root Dir"

输出应为/srv/docker/images,确保配置已生效。

3. 清理Portainer缓存(可选)

若上述操作无效,可能是Portainer缓存了旧配置,可清理Portainer的存储卷后重新启动:

docker stop portainer && docker rm portainer
docker volume rm portainer_data
# 重新启动Portainer容器(使用上述run命令)

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

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.18 09:12:48