把唐诗宋词元曲全装进Docker,一键部署自己的诗词API
简介
什么是诗泉 (chinese-poetry-api) ?
诗泉是一个基于
Go语言的高性能中国古诗词API服务,收录了唐诗、宋词、元曲等近40万首诗词作品。它提供REST和GraphQL双接口,支持简繁体中文切换、全文搜索和IP限流,一条Docker命令即可完成部署。
主要特点
- 高性能:
Go语言编写,支持并发处理,简繁转换仅需~300ns/op - 海量数据:收录近
40万首诗词,涵盖唐诗、宋词、元曲、诗经、楚辞等 - 强大搜索:支持全文搜索、按标题/内容/作者分类搜索
- 双语支持:同一数据库同时存储简体和繁体中文,通过
?lang=参数一键切换 - 多种接口:
REST API和GraphQL双接口支持,满足不同开发需求 - 限流保护:内置
IP限流,防止恶意滥用 - 容器化:
Docker镜像开箱即用,支持amd64/arm64多架构 - 开源免费:基于
GPL-3.0协议开源,可免费使用和修改
应用场景
- 个人博客/网站:为个人网站添加每日诗词展示、飞花令等功能
- 教育/学习工具:作为古诗词学习
App或小程序的后端数据源 - AI 应用:为
AI对话、写作助手提供古诗词内容素材 - 开发者测试:开发人员可以快速搭建测试环境,也可用于爬虫练习

诗泉是一个开箱即用的古诗词数据 API,让你无需自己处理海量数据即可拥有完整的古诗词查询能力。
安装
在群晖上以 Docker 方式安装。
在注册表中搜索 palemoky,选择第二个 palemoky/chinese-poetry-api,版本选择 latest。
本文写作时,
latest版本对应为0.6.0;

卷
在 docker 文件夹中,创建一个新文件夹 chinese-poetry-api,并在其中建一个子文件夹 data
| 文件夹 | 装载路径 | 说明 |
|---|---|---|
docker/chinese-poetry-api/data |
/app/data |
存放诗词数据库 |

端口
本地端口不冲突就行,不确定的话可以用命令查一下
1 | # 查看端口占用 |
| 本地端口 | 容器端口 |
|---|---|
| 1279 | 1279 |

环境
| 可变 | 值 |
|---|---|
TZ |
Asia/Shanghai |

环境变量说明:
TZ用于设置时区,可选。其他如PORT(默认1279)、RATE_LIMIT_RPS(默认10)、RATE_LIMIT_BURST(默认20)等均有内置默认值,无需额外设置。
命令行安装
docker cli 安装
如果你熟悉命令行,可能用 docker cli 更快捷
1 | # 新建文件夹 chinese-poetry-api 和 子目录 |
docker-compose 安装
也可以用 docker-compose 安装,将下面的内容保存为 docker-compose.yml 文件
1 | version: '3.8' |
然后通过 SSH 登录到您的群晖,执行下面的命令:
1 | # 新建文件夹 chinese-poetry-api 和 子目录 |

运行
在浏览器中访问 http://<群晖IP>:1279 会看到错误提示 ,因为这只是个 API 接口服务,并没有包含 Web 服务

首次启动时,容器会自动从 GitHub Release 下载诗词数据库,请耐心等待下载完成。查看启动日志:

1 | # 命令行查看日志 |
下载的诗词数据库会在 data 目录中

如果自动下载有问题,也可以手动下载后解压上传

当看到 Starting API server... 的日志后,即可开始使用 API:
1 | # 获取随机诗词 |

如果习惯使用图形化界面,项目还提供了在线 Demo:https://poetry.palemoky.com
AI 演示
以前这种 API 应用一般都是给程序员用的,但是有了 AI 之后就不一样了

做不了复杂的,可以让 AI 给我们搓个简单的

支持搜索

支持统计

朝代也可以随机

注意事项
- 首次启动需联网:容器启动时会从
GitHub Release下载约382MB的SQLite数据库文件,首次启动需要稳定的网络连接 - 数据持久化:数据库下载到
/app/data目录后,更新检查在每次容器启动时自动进行,持久化该目录可避免重复下载 - 端口选择:
1279是默认端口,可通过环境变量PORT自定义,修改后需同步更新端口映射 - 资源占用:
SQLite数据库加载到内存中运行,建议分配至少512MB内存给容器
参考文档
palemoky/chinese-poetry-api: 📜 诗泉:高性能中国古诗词 API 服务
地址:https://github.com/palemoky/chinese-poetry-apipalemoky/chinese-poetry-api - Docker Image
地址:https://hub.docker.com/r/palemoky/chinese-poetry-api诗泉 — 免费开源的中文古诗词 API
地址:https://poetry.palemoky.com/