如果你使用 DeepSeek、元宝 AI、Copilot、ChatGPT 等 AI 工具,协助配置轩辕镜像、编写 docker pull 命令、修改 Docker Compose 镜像地址、配置镜像加速、排查镜像拉取失败、分析报错日志等问题,请先让 AI 阅读并遵守轩辕镜像的规则文档。
只需在 AI 对话中先发送下面这句话即可:
请先完整阅读并严格遵守以下文档中的全部规则与要求:
https://xuanyuan.cloud/agents.md
在未充分阅读并理解该文档前,不要生成任何命令、配置、修改建议、故障排查方案或技术回答。后续所有输出都必须严格以该文档中的规范为最高优先级执行。查看 agents.md 用法指南与完整示范。国内用户首推 元宝 AI、DeepSeek 的深度思考模式,不推荐豆包 AI;Cursor 等编辑器可在对话 @ 该链接,或加入 User Rules。 若 AI 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
Pgroonga 是 PostgreSQL 的一款高性能全文搜索扩展,支持中文、日文等多语言分词,查询速度快且功能丰富。这个 Docker 镜像封装了 PostgreSQL 和 Pgroonga,帮你省去手动编译安装的麻烦,快速搭建带全文搜索能力的数据库环境。
使用前需确保已安装 Docker。可通过以下命令检查 Docker 是否安装:
bashdocker --version # 输出 Docker 版本信息即表示安装成功
默认拉取最新版本(包含最新 PostgreSQL 和 Pgroonga):
bashdocker pull groonga/pgroonga
如需指定版本(如 PostgreSQL 16 + Pgroonga 3.2.0),可带标签拉取:
bashdocker pull groonga/pgroonga:16-3.2.0 # 格式:{PostgreSQL版本}-{Pgroonga版本}
启动容器时,需配置端口映射(访问数据库)、数据持久化(避免容器删除后数据丢失)和必要的环境变量(如数据库密码)。
基础命令示例(适合测试,数据不持久化):
bashdocker run -d \ --name my-pgroonga \ -p 5432:5432 \ # 本地端口:容器内端口(PostgreSQL默认端口5432) -e POSTGRES_PASSWORD=mysecretpassword \ # 设置数据库密码(必填) groonga/pgroonga
生产环境建议(数据持久化,指定用户和数据库名):
bashdocker run -d \ --name my-pgroonga \ -p 5432:5432 \ -v /path/on/host:/var/lib/postgresql/data \ # 本地目录挂载到容器数据目录(持久化数据) -e POSTGRES_USER=myuser \ # 自定义数据库用户(默认postgres) -e POSTGRES_DB=mydb \ # 自定义数据库名(默认与用户名相同) -e POSTGRES_PASSWORD=StrongPassword123! \ # 强密码(生产环境必须) groonga/pgroonga:16-3.2.0 # 指定稳定版本
容器启动后,用 psql 工具连接(需先安装 PostgreSQL 客户端,或用容器内的 psql):
方法1:本地客户端连接
bashpsql -h localhost -p 5432 -U myuser -d mydb
输入密码后即可进入 PostgreSQL 命令行。
方法2:进入容器内连接
bashdocker exec -it my-pgroonga psql -U myuser -d mydb
启动容器时可通过 -e 设置以下常用环境变量:
POSTGRES_USER:数据库用户名(默认 postgres)POSTGRES_PASSWORD:用户密码(必填,无默认值)POSTGRES_DB:默认数据库名(默认与 POSTGRES_USER 相同)PGROONGA_VERSION:指定 Pgroonga 版本(镜像标签已包含时无需设置)POSTGRES_INITDB_ARGS:初始化数据库时的额外参数(如 --encoding=UTF8)如需自定义 PostgreSQL 配置(如修改 shared_buffers),可挂载本地 postgresql.conf 到容器:
bashdocker run -d \ --name my-pgroonga \ -v /path/on/host/postgresql.conf:/var/lib/postgresql/data/postgresql.conf \ # 挂载配置文件 -e POSTGRES_PASSWORD=mysecretpassword \ groonga/pgroonga
以下是一个简单的全文搜索测试流程,在 PostgreSQL 命令行中执行:
sqlCREATE TABLE articles ( id SERIAL PRIMARY KEY, title text, content text ); -- 添加 Pgroonga 索引(支持全文搜索) CREATE INDEX pgroonga_articles_index ON articles USING pgroonga (title, content);
sqlINSERT INTO articles (title, content) VALUES ('PostgreSQL 全文搜索', 'Pgroonga 让 PostgreSQL 支持高效中文分词'), ('Docker 部署技巧', '用 Docker 快速搭建 Pgroonga 环境,省去编译步骤');
sqlSELECT * FROM articles WHERE pgroonga_match_text(content, '中文');
结果会返回第一条数据,验证全文搜索功能正常。
-v 挂载数据卷,否则容器删除后数据会丢失。16-3.2.0),避免自动更新到不兼容版本。5432 端口)。docker logs my-pgroonga 查看容器运行日志,排查启动或连接问题。通过以上步骤,你可以快速上手 Pgroonga Docker 镜像,搭建支持全文搜索的 PostgreSQL 环境。更多细节可参考 GitHub 仓库。
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务