fix: 修复data目录所有者权限问题

- 明确设置/app/data目录所有者为claude:nodejs用户
- 避免之前chown -R /app导致的权限覆盖问题
- 精确控制每个目录的权限:logs、data、temp、config都为775权限
- 确保setup.js可以在/app/data目录中创建init.json文件
- 解决"EACCES: permission denied"错误

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
shaw
2025-07-19 02:32:04 +08:00
parent ea5ee199b6
commit 30010c121d

View File

@@ -34,11 +34,11 @@ COPY --chown=claude:nodejs . .
COPY --chown=claude:nodejs docker-entrypoint.sh /usr/local/bin/
RUN chmod +x /usr/local/bin/docker-entrypoint.sh
# 📁 创建必要目录并设置权限
# 📁 创建必要目录并设置权限 - 先创建目录,再设置所有者
RUN mkdir -p logs data temp && \
chown -R claude:nodejs /app && \
chown -R claude:nodejs /app/logs /app/data /app/temp /app/config && \
chmod 755 /app && \
chmod 775 logs data temp config
chmod 775 /app/logs /app/data /app/temp /app/config
# 🔧 预先创建配置文件避免权限问题
RUN if [ ! -f "/app/config/config.js" ] && [ -f "/app/config/config.example.js" ]; then \