部署常见问题

PowerWiki 部署常见问题

本文档整理了 PowerWiki 部署过程中的常见问题和解决方案。

目录


Docker 部署问题

容器无法启动

问题描述: 运行 docker run 后容器立即退出

解决方案:

  1. 查看容器日志
docker logs powerwiki
  1. 检查配置文件是否存在
ls -la /path/to/config.json
  1. 检查配置文件格式
cat config.json | python -m json.tool
  1. 确保端口未被占用
lsof -i :3150

拉取镜像失败

问题描述: docker pull 失败或速度很慢

解决方案:

  1. 检查网络连接
ping hub.docker.com
  1. 配置 Docker 镜像加速器(中国用户)
# 编辑 /etc/docker/daemon.json
{
  "registry-mirrors": [
    "https://mirror.ccs.tencentyun.com"
  ]
}

# 重启 Docker
sudo systemctl restart docker
  1. 使用代理
docker pull sayunchuan/powerwiki --proxy http://proxy.example.com:8080

容器运行但无法访问

问题描述: 容器正常运行,但浏览器无法访问

解决方案:

  1. 检查容器状态
docker ps | grep powerwiki
  1. 检查端口映射
docker port powerwiki
  1. 检查防火墙
sudo ufw allow 3150/tcp
  1. 测试容器内部服务
docker exec powerwiki curl http://localhost:3150

数据丢失

问题描述: 重启容器后数据丢失

解决方案:

使用数据卷持久化数据:

docker run -d \
  -v powerwiki_data:/app/data \
  -v powerwiki_cache:/app/cache \
  sayunchuan/powerwiki

更新镜像后出错

问题描述: 更新到新版本后无法启动

解决方案:

  1. 回滚到旧版本
docker run -d sayunchuan/powerwiki:1.4.5
  1. 检查配置文件兼容性
# 对比新旧版本的配置示例
docker run --rm sayunchuan/powerwiki:latest cat /app/config.example.json
  1. 清理缓存
docker volume rm powerwiki_cache

配置问题

config.json 格式错误

问题描述: 配置文件格式不正确导致启动失败

解决方案:

  1. 验证 JSON 格式
cat config.json | python -m json.tool
  1. 检查必填字段
{
  "gitRepo": "必填 - Git 仓库地址",
  "port": 3150
}
  1. 使用配置模板
cp config.example.json config.json

Git 仓库无法访问

问题描述: PowerWiki 无法克隆或拉取 Git 仓库

解决方案:

  1. 测试仓库连接
git clone <your-repo-url> test-repo
  1. 检查仓库 URL 格式
正确: https://github.com/username/repo.git
错误: https://github.com/username/repo
  1. 私有仓库需要认证
{
  "gitRepo": "https://username:token@github.com/username/repo.git"
}
  1. 使用 SSH(需要配置密钥)
{
  "gitRepo": "git@github.com:username/repo.git"
}

端口冲突

问题描述: 3150 端口已被占用

解决方案:

  1. 查看占用端口的进程
lsof -i :3150
  1. 使用不同端口
docker run -d -p 8080:3150 sayunchuan/powerwiki

或修改配置文件:

{
  "port": 8080
}

自动同步不工作

问题描述: Git 仓库更新后 PowerWiki 没有自动同步

解决方案:

  1. 检查同步间隔配置
{
  "autoSyncInterval": 180000
}
  1. 手动触发同步
docker restart powerwiki
  1. 查看日志
docker logs -f powerwiki | grep sync

性能问题

启动速度慢

问题描述: PowerWiki 启动需要很长时间

可能原因:

  • Git 仓库太大
  • 网络连接慢
  • 磁盘 I/O 慢

解决方案:

  1. 使用浅克隆
# 在 Git 仓库中设置
git clone --depth 1 <repo-url>
  1. 减少仓库大小
# 清理 Git 历史
git gc --aggressive --prune=now
  1. 使用 SSD 存储

内存占用高

问题描述: PowerWiki 占用内存过多

解决方案:

  1. 限制容器内存
docker run -d -m 512m sayunchuan/powerwiki
  1. 清理缓存
docker exec powerwiki rm -rf /app/cache/*
  1. 增加同步间隔
{
  "autoSyncInterval": 600000
}

CPU 占用高

问题描述: PowerWiki CPU 使用率过高

解决方案:

  1. 限制 CPU 使用
docker run -d --cpus="1.0" sayunchuan/powerwiki
  1. 检查是否频繁同步
docker logs powerwiki | grep sync | tail -20
  1. 使用反向代理缓存
proxy_cache_path /var/cache/nginx levels=1:2 keys_zone=powerwiki_cache:10m;

页面加载慢

问题描述: 访问 PowerWiki 页面加载很慢

解决方案:

  1. 启用 Nginx 缓存
  2. 压缩静态资源
  3. 使用 CDN
  4. 优化图片大小

网络问题

无法访问 PowerWiki

问题描述: 浏览器无法打开 PowerWiki

排查步骤:

  1. 检查容器状态
docker ps | grep powerwiki
  1. 检查端口映射
docker port powerwiki
  1. 测试本地访问
curl http://localhost:3150
  1. 检查防火墙
sudo ufw status
sudo ufw allow 3150/tcp
  1. 检查 DNS 解析(如果使用域名)
nslookup wiki.example.com

HTTPS 证书错误

问题描述: 浏览器提示证书不安全

解决方案:

  1. 使用 Let's Encrypt 免费证书
sudo certbot certonly --standalone -d wiki.example.com
  1. 配置 Nginx SSL
ssl_certificate /etc/letsencrypt/live/wiki.example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/wiki.example.com/privkey.pem;
  1. 自动续期
sudo certbot renew --dry-run

跨域问题

问题描述: 前端请求被 CORS 阻止

解决方案:

在 Nginx 中配置 CORS:

add_header Access-Control-Allow-Origin *;
add_header Access-Control-Allow-Methods "GET, POST, OPTIONS";

数据问题

如何备份数据

问题描述: 需要备份 PowerWiki 数据

解决方案:

  1. 备份数据卷
docker run --rm \
  -v powerwiki_data:/data \
  -v $(pwd):/backup \
  alpine tar czf /backup/data-$(date +%Y%m%d).tar.gz -C /data .
  1. 备份配置文件
cp config.json config-$(date +%Y%m%d).json
  1. 备份 Git 仓库
git clone --mirror <your-repo-url> backup.git

如何恢复数据

问题描述: 需要从备份恢复数据

解决方案:

  1. 恢复数据卷
docker run --rm \
  -v powerwiki_data:/data \
  -v $(pwd):/backup \
  alpine tar xzf /backup/data-20260207.tar.gz -C /data
  1. 恢复配置文件
cp config-20260207.json config.json
  1. 重启容器
docker restart powerwiki

数据不同步

问题描述: Git 仓库更新了但 PowerWiki 没有显示

解决方案:

  1. 手动触发同步
docker restart powerwiki
  1. 清理缓存
docker exec powerwiki rm -rf /app/cache/*
docker restart powerwiki
  1. 检查 Git 仓库配置
docker exec powerwiki cat /app/config.json

获取帮助

如果以上方案无法解决您的问题,可以通过以下方式获取帮助:

查看文档

提交 Issue

社区讨论


最后更新: 2026-02-07

更新时间:2026年2月24日