不知道为什么,我的docmost容器每次重启后就会失败,这里总结了一套方案,希望有同样需要的能够用上。

1. 本次修复过程及原因总结
问题根本原因
权限冲突:Docker 容器内服务运行的用户 ID 与宿主机挂载目录的所有者不匹配,导致容器无法读写数据文件。
具体问题分析
- Redis 容器:以 UID 1001 运行,但宿主机 redis/ 目录所有者是 root
- PostgreSQL 容器:以 UID 999 运行,但宿主机 db/ 目录所有者是 polkitd
- Docmost 应用容器:以 UID 1000 运行,但宿主机 data/ 目录权限不正确
修复过程
# 进入目录
cd /www/server/panel/data/compose/docmost2
# 停止服务:docker-compose down 清理环境
docker-compose down
# 权限修复
chown -R 1001:1001 redis/ # Redis 容器用户
chown -R 999:999 db/ # PostgreSQL 容器用户
chown -R 1000:1000 data/ # Docmost 应用用户
chmod -R 755 redis/ data/ db/ # 设置正确权限
# 重启验证
docker-compose up -d


请登录后查看回复内容