
这是一个Docker Compose文件和辅助脚本,用于演示如何使用Docker Swarm部署具有自动故障转移功能的高可用PostgreSQL集群。该集群集成了PostgreSQL数据库、连接池(pgbouncer)、集群管理(patroni)、备份工具(wal-g)、分布式配置存储(etcd)和负载均衡(haproxy),提供稳定可靠的数据库服务。
完整技术栈包括:
| 名称 | 描述 | 默认值 |
|---|---|---|
PATRONI_SCOPE | Patroni集群名称/作用域 | batman |
PATRONI_NAME | Patroni节点名称 | $(hostname) |
PATRONI_POSTGRESQL_DATA_DIR | PostgreSQL数据目录 | $PGDATA |
PATRONI_POSTGRESQL_LISTEN | PostgreSQL监听地址 | 0.0.0.0:5432 |
PATRONI_POSTGRESQL_CONNECT_ADDRESS | PostgreSQL连接地址 | $DOCKER_IP:5432 |
PATRONI_RESTAPI_LISTEN | Patroni REST API监听地址 | 0.0.0.0:8008 |
PATRONI_RESTAPI_CONNECT_ADDRESS | Patroni REST API连接地址 | $DOCKER_IP:8008 |
PATRONI_REPLICATION_USERNAME | 复制用户名 | replicator |
PATRONI_POSTGRESQL_PGPASS | .pgpass文件路径 | /opt/postgres/.pgpass |
PATRONI_CONFIG_PATH | Patroni配置文件路径 | /opt/postgres/config/postgres.yml |
| 名称 | 描述 | 默认值 |
|---|---|---|
PG_SHARED_BUFFERS | 共享缓冲区内存大小 | 2GB |
PG_EFFECTIVE_CACHE_SIZE | 规划器对内核缓存大小的假设 | 6GB |
PG_MAINTENANCE_WORK_MEM | 维护操作内存大小 | 512MB |
PG_CHECKPOINT_COMPLETION_TARGET | 检查点完成目标 | 0.7 |
PG_WAL_BUFFERS | WAL缓冲区内存大小 | 16MB |
PG_DEFAULT_STATISTICS_TARGET | 列的默认统计目标 | 100 |
PG_RANDOM_PAGE_COST | 非顺序获取磁盘页的成本 | 1.1 |
PG_EFFECTIVE_IO_CONCURRENCY | 并发磁盘I/O操作数 | 200 |
PG_WORK_MEM | 查询操作内存大小 | 16MB |
PG_MIN_WAL_SIZE | WAL最小收缩大小 | 1GB |
PG_MAX_WAL_SIZE | WAL最大增长大小 | 4GB |
PG_MAX_WORKER_PROCESSES | 最大后台进程数 | 2 |
PG_MAX_PARALLEL_WORKERS_PER_GATHER | 每个gather节点的最大并行工作线程数 | 1 |
PG_MAX_PARALLEL_WORKERS | 最大并行工作线程数 | 2 |
PG_UNIX_SOCKET_DIRECTORIES | Unix socket目录 | /tmp |
PG_MAX_CONNECTIONS | 最大并发连接数 | 64 |
可根据硬件配置计算PostgreSQL优化配置:[***]
| 名称 | 描述 | 默认值 |
|---|---|---|
TELEGRAM_API_TOKEN | 用于发送通知的***机器人API令牌 | - |
TELEGRAM_CHAT_ID | 接收通知的***聊天ID | - |
适用于需要高可用PostgreSQL数据库的生产环境,如企业级应用、数据服务、电商平台等对数据库可靠性要求较高的场景。通过Docker Swarm编排,可简化部署和管理流程,确保数据库服务持续可用。
docker-compose up -d更多信息:https://github.com/galetahub/patroni-docker-image




探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录认证访问私有仓库
无需登录使用专属域名
Kubernetes 集群配置 Containerd
K3s 轻量级 Kubernetes 镜像加速
VS Code Dev Containers 配置
Podman 容器引擎配置
HPC 科学计算容器配置
ghcr、Quay、nvcr 等镜像仓库
Harbor Proxy Repository 对接专属域名
Portainer Registries 加速拉取
Nexus3 Docker Proxy 内网缓存
需要其他帮助?请查看我们的 常见问题Docker 镜像访问常见问题解答 或 提交工单
manifest unknown
no matching manifest(架构)
invalid tar header(解压)
TLS 证书失败
DNS 超时
410 Gone 排查
402 与流量用尽
401 认证失败
429 限流
D-Bus 凭证提示
413 与超大单层
来自真实用户的反馈,见证轩辕镜像的优质服务