webtrees 族谱服务
既然你已经有服务器、会用 Docker + Nginx,部署 webtrees 会非常简单。
我给你一套 稳定、可长期运行的 Docker 部署方案,以后也方便备份迁移。
我会按下面顺序讲:
1️⃣ 架构设计
2️⃣ Docker 部署步骤(推荐)
3️⃣ Nginx 反向代理
4️⃣ 初始化族谱
5️⃣ 备份建议
一、推荐部署架构
建议结构:
Internet
│
Nginx
│
webtrees (Docker)
│
MariaDB (Docker)
目录结构建议:
/opt/docker/webtrees
├── docker-compose.yml
├── db
└── data
说明:
db → 数据库
data → 家谱数据
二、创建部署目录
mkdir -p /opt/docker/webtrees
cd /opt/docker/webtrees
创建数据目录:
mkdir db
mkdir data
三、编写 docker-compose.yml
创建文件:
vim docker-compose.yml
内容:
version: '3'
services:
webtrees:
image: dtjs48jkt/webtrees
container_name: webtrees
restart: always
ports:
- "8088:80"
volumes:
- ./data:/var/www/html/data
depends_on:
- webtrees-db
webtrees-db:
image: mariadb:10.11
container_name: webtrees-db
restart: always
environment:
MYSQL_ROOT_PASSWORD: rootpass
MYSQL_DATABASE: webtrees
MYSQL_USER: webtrees
MYSQL_PASSWORD: webtreespass
volumes:
- ./db:/var/lib/mysql
你可以修改密码:
rootpass
webtreespass
四、启动容器
运行:
docker compose up -d
查看:
docker ps
应该看到:
webtrees
webtrees-db
五、访问安装界面
浏览器访问:
http://服务器IP:8088
进入安装界面。
数据库填写:
数据库服务器:webtrees-db
数据库名:webtrees
用户:webtrees
密码:webtreespass
管理员账号自己设置即可。
完成后就可以进入家谱系统。
六、Nginx 反向代理(推荐)
假设你准备使用:
zupu.luoxingding.com
创建 nginx 配置:
vim /etc/nginx/conf.d/webtrees.conf
内容:
server {
listen 80;
server_name zupu.luoxingding.com;
location / {
proxy_pass http://127.0.0.1:8088;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
重载 nginx:
nginx -s reload
访问:
http://zupu.luoxingding.com
七、webtrees里开始建族谱
登录后台后:
创建 Family Tree
例如:
罗氏族谱
然后可以:
添加人物
添加家庭
添加父子关系
添加照片
webtrees 会自动生成:
- 家族树
- 世系图
- 关系图
例如:
罗一世
├─ 罗二世
│ ├─ 罗三世
│ └─ 罗三世
八、导入族谱(很重要)
webtrees支持族谱标准格式:
GEDCOM
如果你以后用 Excel 整理数据,可以导入。
也可以导出:
GEDCOM
用于长期保存。
九、备份(非常重要)
你只需要备份两个目录:
/opt/docker/webtrees/db
/opt/docker/webtrees/data
备份命令:
tar -zcf webtrees-backup.tar.gz db data
恢复只需要:
docker compose down
恢复目录
docker compose up -d
即可。
十、未来可以升级的功能
这个系统还能:
家族地图
显示祖先迁徙。
家族照片
每个人都可以附带照片。
家族故事
记录家族历史。
权限管理
只有族人才能编辑。
十一、我建议你下一步做的事
先不要急着录入数据。
先做 族谱结构规划:
第1代 始祖
第2代
第3代
...
第12代
然后录入。
如果你愿意,我可以再给你一份 非常实用的东西:
我可以帮你做一个:
《族谱录入Excel模板》
只要填表:
姓名
父亲
母亲
配偶
出生
去世
子女
我可以教你 一键导入 webtrees。
这样录入 几百人会非常快。