本站支持搜索的镜像仓库:Docker Hub、gcr.io、ghcr.io、quay.io、k8s.gcr.io、registry.gcr.io、elastic.co、mcr.microsoft.com
本镜像整合了 TimescaleDB(基于 PostgreSQL 的时序数据库)和 Patroni(PostgreSQL 高可用解决方案),旨在提供开箱即用的高可用时序数据库部署方案。通过 Patroni 的自动故障转移与主从复制能力,结合 TimescaleDB 对时序数据的优化特性,实现时序数据存储的高可用性、可靠性与性能优化。
docker run -d \ --name timescaledb-patroni-test \ -p 5432:5432 \ -e POSTGRES_PASSWORD=StrongPassword123 \ -e REPLICATION_PASSWORD=ReplPassword456 \ -e PATRONI_SCOPE=timescale-cluster \ -e PATRONI_MODE=standalone \ -v timescaledb-data:/var/lib/postgresql/data \ timescale/timescaledb-ha:latest
-p 5432:5432:映射 PostgreSQL 默认端口-v timescaledb-data:/var/lib/postgresql/data:持久化存储数据目录POSTGRES_PASSWORD:数据库管理员(postgres 用户)密码REPLICATION_PASSWORD:复制用户(replicator)密码(用于主从同步)PATRONI_SCOPE:Patroni 集群标识(同一集群需一致)PATRONI_MODE=standalone:单节点模式(非集群)docker run -d \ --name etcd \ -p 2379:2379 \ -e ETCD_LISTEN_CLIENT_URLS=[***] \ -e ETCD_ADVERTISE_CLIENT_URLS=[***] \ quay.io/coreos/etcd:v3.5.9
创建 docker-compose.yml:
version: '3.8' services: # 主节点 patroni-master: image: timescale/timescaledb-ha:latest container_name: patroni-master ports: - "5432:5432" environment: - POSTGRES_PASSWORD=StrongPassword123 - REPLICATION_PASSWORD=ReplPassword456 - PATRONI_SCOPE=timescale-cluster - PATRONI_MODE=master - PATRONI_ETCD_HOSTS=etcd:2379 - PATRONI_RETRY_TIMEOUT=10 - PATRONI_INITIAL_CLUSTER_SIZE=2 - TIMESCALEDB_TELEMETRY=off # 禁用遥测(可选) volumes: - master-data:/var/lib/postgresql/data depends_on: - etcd networks: - tsdb-network # 从节点 patroni-replica: image: timescale/timescaledb-ha:latest container_name: patroni-replica ports: - "5433:5432" # 避免端口冲突 environment: - POSTGRES_PASSWORD=StrongPassword123 - REPLICATION_PASSWORD=ReplPassword456 - PATRONI_SCOPE=timescale-cluster - PATRONI_MODE=replica - PATRONI_ETCD_HOSTS=etcd:2379 - PATRONI_RETRY_TIMEOUT=10 - TIMESCALEDB_TELEMETRY=off volumes: - replica-data:/var/lib/postgresql/data depends_on: - etcd networks: - tsdb-network # etcd 配置存储 etcd: image: quay.io/coreos/etcd:v3.5.9 container_name: etcd ports: - "2379:2379" environment: - ETCD_LISTEN_CLIENT_URLS=[***] - ETCD_ADVERTISE_CLIENT_URLS=[***] volumes: - etcd-data:/default.etcd networks: - tsdb-network volumes: master-data: replica-data: etcd-data: networks: tsdb-network: driver: bridge
docker-compose up -d
| 参数名 | 说明 | 默认值 |
|---|---|---|
PATRONI_SCOPE | 集群唯一标识(所有节点需一致) | timescale |
PATRONI_MODE | 节点角色(master/replica/standalone) | standalone |
PATRONI_ETCD_HOSTS | etcd 集群地址(格式:host:port) | localhost:2379 |
PATRONI_RETRY_TIMEOUT | 故障转移重试间隔(秒) | 10 |
PATRONI_INITIAL_CLUSTER_SIZE | 初始集群节点数(用于自动发现) | 1 |
PATRONI_POSTGRESQL_DATA_DIR | PostgreSQL 数据目录 | /var/lib/postgresql/data |
| 参数名 | 说明 | 默认值 |
|---|---|---|
POSTGRES_PASSWORD | postgres 用户密码(必填) | - |
REPLICATION_PASSWORD | 复制用户(replicator)密码(必填) | - |
POSTGRES_DB | 初始数据库名称 | postgres |
MAX_CONNECTIONS | 最大连接数 | 100 |
SHARED_BUFFERS | 共享内存缓冲区(建议物理内存 1/4) | 128MB |
TIMESCALEDB_AUTO_CREATE_HYPERTABLES | 是否自动创建时序表 | on |
模拟主节点故障:
docker stop patroni-master
观察从节点自动提升: Patroni 会通过 etcd 检测主节点心跳丢失(默认 30 秒内),自动将从节点提升为新主。可通过以下命令验证新主节点:
# 进入从节点容器 docker exec -it patroni-replica bash # 查看 Patroni 状态 patronictl -c /etc/patroni.yml list
恢复原主节点: 重启原主节点后,Patroni 会自动将其作为从节点重新加入集群,同步新主数据:
docker start patroni-master
/var/lib/postgresql/data,避免容器重启导致数据丢失。shared_buffers、work_mem 等参数,建议参考 PostgreSQL 性能调优最佳实践。免费版仅支持 Docker Hub 加速,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。
免费版仅支持 docker.io;专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等。
当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。
通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。
先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。
使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录方式配置轩辕镜像加速服务,包含7个详细步骤
在 Linux 系统上配置轩辕镜像源,支持主流发行版
在 Docker Desktop 中配置轩辕镜像加速,适用于桌面系统
在 Docker Compose 中使用轩辕镜像加速,支持容器编排
在 k8s 中配置 containerd 使用轩辕镜像加速
在宝塔面板中配置轩辕镜像加速,提升服务器管理效率
在 Synology 群晖NAS系统中配置轩辕镜像加速
在飞牛fnOS系统中配置轩辕镜像加速
在极空间NAS中配置轩辕镜像加速
在爱快ikuai系统中配置轩辕镜像加速
在绿联NAS系统中配置轩辕镜像加速
在威联通NAS系统中配置轩辕镜像加速
在 Podman 中配置轩辕镜像加速,支持多系统
配置轩辕镜像加速9大主流镜像仓库,包含详细配置步骤
无需登录即可使用轩辕镜像加速服务,更加便捷高效
需要其他帮助?请查看我们的 常见问题 或 官方QQ群: 13763429