如果你使用 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 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
Tmax OpenSQL是韩国领先DBMS公司TmaxTibero的开源DBMS专业服务平台品牌,基于其20年积累的自主技术,提供PostgreSQL一站式整体服务。OpenSQL-PostgreSQL镜像则是该平台下的Docker化部署方案,旨在简化PostgreSQL数据库的部署与管理,适用于对高可用性、可扩展性、大容量处理、备份恢复、安全性等有需求的业务场景。
TmaxTibero凭借24*365技术支持、7000+定制化数据库迁移咨询经验、152项专利技术及250人左右的研发团队,为该镜像提供了专业的技术背书。
该镜像支持以下标签,均基于redhat/ubi8构建:
bashdocker run -v [主机绝对路径]:[容器内绝对路径] \ --name [容器名称] \ hypersql/postgres:[标签名称]
将vars.yml文件或vars目录挂载到容器中,容器创建时会自动应用参数配置:
bash# 挂载单个vars.yml文件 docker run -v /绝对路径/to/var/file:/tmp/settings/vars/vars.yml # 挂载vars目录 docker run -v /绝对路径/to/vars/directory:/tmp/settings/vars
可配置参数涵盖autotuning、manage_dbserver、init_dbserver角色相关参数(详细参数参考pg-ansible项目各角色README:https://github.com/hypersql/pg-ansible%EF%BC%89%E3%80%82%E5%B8%B8%E7%94%A8%E5%8F%82%E6%95%B0%E5%A6%82%E4%B8%8B%EF%BC%9A
设置超级用户名(默认:postgres)
yamlpg_superuser: "super_username"
设置超级用户密码(必填)
yamlpg_superuser_password: "xxxxx"
设置UID
yamlpg_owner_id: 1000
设置GID
yamlpg_group_id: 1000
设置数据库集群目录(默认:/var/lib/pgsql/version/data)
yamlpg_data: "/pgdata"
设置日志目录(默认:/var/log/postgres)
yamlpg_log: "/pglog"
设置WAL目录(默认:$PGDATA/pg_wal)
yamlpg_wal: "/pgwal"
创建数据库
yamlpg_databases: - name: "database_name" owner: "super_username"
设置PostgreSQL参数
yamlpg_postgres_conf_params: - name: "archive_command" value: "/bin/true"
设置最大连接数(默认:按CPU自动计算,最小值100)
yamlpg_max_connections: 50
镜像会根据容器隔离的资源自动调优参数,可通过以下方式限制容器资源:
bashdocker run --memory="300m"
指定CPU核心(例:仅使用0-2核心)
bashdocker run --cpuset-cpus="0-2"
设置CPU CFS配额和周期(周期默认***,即100ms)
bashdocker run --cpu-period=100000 --cpu-quota=50000
设置CPU使用率百分比(例:使用50% CPU)
bashdocker run --cpus=".5"
直接挂载主机路径可能导致容器用户与主机用户权限冲突,且Docker卷存储在/var/lib/docker/volumes/路径下,便于管理。推荐使用Docker卷而非直接挂载路径。
bashdocker volume inspect <卷名称>
bash# 创建卷 docker volume create volume-1 # 使用卷运行容器 docker run -v volume-1:/path/want/to/mount
声明的卷可在其他容器中复用:
yaml# docker-compose.yml services: pg: image: hypersql/postgres:14.6 ports: - "5432:5432" volumes: - volume-1:/path/want/to/mount volumes: volume-1:
如需从旧版hypersql docker镜像迁移数据,需使用迁移镜像,指定旧环境参数:
bashdocker run -v /绝对路径/to/external/volume:/hypersql/pgdata/ \ -v /绝对路径/to/external/volume:/hypersql/pgwal/ \ -e POSTGRES_USER=${PG_USER} \ -e POSTGRES_PASSWORD=${PG_PASSWORD} \ -e POSTGRES_DB=${DB_NAME} \ -e POSTGRES_DATADIR=${DATADIR} \ hypersql/postgres:migration-14
迁移完成后,可使用新版镜像正常运行。
镜像基于以下规则自动调优PostgreSQL参数:
max_connections:vcpus*4(至少100)或pg_max_connections配置值shared_buffers:
work_mem:(总内存 - shared_buffers)/(pg_max_connections*16)maintenance_work_mem:不超过1024MB,(总内存 - shared_buffers)*15/100/autovacuum_max_workerseffective_cache_size:shared_buffers + (sys_buffers_kb + sys_cached_kb + sys_slab_reclaimable_kb)/1024wal_compression:"on"wal_log_hints:"on"wal_buffers:64MBcheckpoint_timeout:5mincheckpoint_completion_target:0.9cpu_tuple_cost:0.03autovacuum_max_workers:5autovacuum_vacuum_cost_limit:3000idle_in_transaction_session_timeout:10mindefault_statistics_target:100hash_mem_multiplier:2.0以下是 tmaxopensql/postgres 相关的常用 Docker 镜像,适用于 关系型数据库、复杂查询、数据完整性 等不同场景:
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。


来自真实用户的反馈,见证轩辕镜像的优质服务