鉴于 Wiki.js 在企业环境下不够灵活,本文介绍如何清理 Wiki.js 并重新部署 XWiki,打造稳定的企业级开源知识库。
一、准备工作
在科学上网的主机 A 上操作:
1. 下载并导出 XWiki 镜像(Windows 10 上使用 Docker Desktop):
docker pull xwiki:latest
docker save -o C:\Users\admin\Downloads\xwiki.tar xwiki:latest
2. 使用 MobaXterm 将镜像传输到服务器 B,然后加载镜像:
docker load -i /root/docker-compose-app/xwiki.tar
二、清理 Wiki.js
在部署 XWiki 的服务器 B 上:
1. 停止并删除旧容器
docker stop wiki wiki-db
docker rm wiki wiki-db
2. 删除旧持久化数据(可选)
旧数据目录通常位于 ./wiki-db-data(在 docker-compose-app 目录下)。
如果不需要旧数据,可以直接删除:
rm -rf ./wiki-db-data
如果可能以后还用,建议先备份:
tar -czvf wiki-db-data-backup.tar.gz ./wiki-db-data
3. 删除旧镜像(可选)
确认以后不再使用 Wiki.js,可删除镜像:
docker rmi requarks/wiki:latest
三、部署 XWiki
1. 停掉现有服务
cd ~/docker-compose-app
docker compose down
2. 单独启动 Nginx
docker compose up -d nginx-ds
3. 申请 SSL 证书(已安装 acme.sh 的情况下)
source ~/.bashrc
acme.sh –issue –dns dns_cf -d xwiki.free-ai.top –server letsencrypt
acme.sh –install-cert -d xwiki.free-ai.top \
–key-file /root/docker-compose-app/nginx/certs/xwiki.free-ai.top_ssl.key \
–fullchain-file /root/docker-compose-app/nginx/certs/xwiki.free-ai.top_ssl.crt \
–reloadcmd “docker restart nginx-ds”
四、启动 XWiki 服务
修正好 docker-compose.yml 后,启动新容器并清理孤立容器:
docker compose up -d –remove-orphans
docker volume prune
检查 Nginx 日志,确保服务正常启动:
docker logs nginx-ds