轩辕镜像 官方专业版
轩辕镜像
专业版
轩辕镜像 官方专业版
轩辕镜像
专业版
首页个人中心搜索镜像
交易
充值流量¥7起我的订单
文档
工具
提交工单页面收录
timescaledb-ha

timescale/timescaledb-ha

timescale

包含TimescaleDB时序数据库与Patroni高可用工具,用于构建具备高可用性的时序数据存储解决方案。

33 次收藏下载次数: 0状态:社区镜像维护者:timescale仓库类型:镜像最近更新:26 天前
让 AI 帮你使用轩辕镜像? · 展开查看说明 · 点击收起说明

如果你使用 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 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。

DockerHub 官方简介
轩辕镜像中文简介
下载命令
镜像标签列表与下载命令
轩辕镜像,快一点,稳很多。
点击查看

TimescaleDB with Patroni 高可用镜像文档

一、镜像概述和主要用途

本镜像整合了 TimescaleDB(基于 PostgreSQL 的时序数据库)和 Patroni(PostgreSQL 高可用解决方案),旨在提供开箱即用的高可用时序数据库部署方案。通过 Patroni 的自动故障转移与主从复制能力,结合 TimescaleDB 对时序数据的优化特性,实现时序数据存储的高可用性、可靠性与性能优化。

二、核心功能和特性

2.1 TimescaleDB 核心特性

  • 时序数据优化:针对时间序列数据设计的自动分区(按时间/空间)、数据保留策略、时序聚合函数
  • PostgreSQL 兼容:完全兼容 PostgreSQL 生态,支持 SQL 标准、索引类型(B-tree、GiST 等)及扩展
  • 高性能写入:优化批量写入性能,支持每秒数十万级时序数据点插入
  • 数据压缩:时序分区数据自动压缩,降低存储成本(最高可达 90% 压缩率)

2.2 Patroni 高可用特性

  • 自动故障转移:主节点故障时自动提升从节点为新主,恢复服务可用性
  • 主从复制管理:基于 PostgreSQL 流式复制,支持异步/同步复制模式配置
  • 集群配置一致性:通过分布式配置存储(默认支持 etcd、Consul、ZooKeeper)维护集群状态
  • 自愈能力:节点故障恢复后自动重新加入集群,同步数据并恢复复制关系

三、使用场景和适用范围

3.1 适用场景

  • 监控与可观测性系统:存储服务器、应用、网络设备的监控指标(如 Prometheus 后端存储)
  • IoT 数据平台:处理海量传感器、设备的时序数据流(温度、湿度、位置等)
  • 日志与事件分析:存储应用日志、用户行为事件等带时间戳的结构化数据
  • ***交易记录:存储高频交易数据,需保证数据完整性和服务连续性

3.2 适用范围

  • 对数据可用性要求高(SLA ≥ 99.9%)的业务场景
  • 时序数据量较大(TB 级以上)且需长期存储的场景
  • 需要简化数据库集群运维(自动故障处理、配置管理)的场景

四、详细使用方法和配置说明

4.1 环境要求

  • Docker Engine ≥ 20.10
  • Docker Compose ≥ 2.10(集群部署时)
  • 分布式配置存储(etcd/Consul/ZooKeeper,集群模式必需)
  • 每个节点至少 2 CPU 核心、4GB 内存(生产环境建议 4 CPU/8GB 起)

4.2 基本使用(单节点测试)

4.2.1 启动命令

bash
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

4.2.2 参数说明

  • -p 5432:5432:映射 PostgreSQL 默认端口
  • -v timescaledb-data:/var/lib/postgresql/data:持久化存储数据目录
  • POSTGRES_PASSWORD:数据库管理员(postgres 用户)密码
  • REPLICATION_PASSWORD:复制用户(replicator)密码(用于主从同步)
  • PATRONI_SCOPE:Patroni 集群标识(同一集群需一致)
  • PATRONI_MODE=standalone:单节点模式(非集群)

4.3 集群部署(高可用模式)

4.3.1 前置条件

  • 部署 etcd 集群(示例使用单节点 etcd 测试,生产环境建议 3/5 节点集群):
    bash
    docker run -d \
      --name etcd \
      -p 2379:2379 \
      -e ETCD_LISTEN_CLIENT_URLS=http://0.0.0.0:2379 \
      -e ETCD_ADVERTISE_CLIENT_URLS=http://etcd:2379 \
      quay.io/coreos/etcd:v3.5.9
    

4.3.2 Docker Compose 集群配置(主从架构)

创建 docker-compose.yml:

yaml
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=http://0.0.0.0:2379
      - ETCD_ADVERTISE_CLIENT_URLS=http://etcd:2379
    volumes:
      - etcd-data:/default.etcd
    networks:
      - tsdb-network

volumes:
  master-data:
  replica-data:
  etcd-data:

networks:
  tsdb-network:
    driver: bridge

4.3.3 启动集群

bash
docker-compose up -d

4.4 核心配置参数说明

4.4.1 Patroni 高可用配置(环境变量)

参数名说明默认值
PATRONI_SCOPE集群唯一标识(所有节点需一致)timescale
PATRONI_MODE节点角色(master/replica/standalone)standalone
PATRONI_ETCD_HOSTSetcd 集群地址(格式:host:port)localhost:2379
PATRONI_RETRY_TIMEOUT故障转移重试间隔(秒)10
PATRONI_INITIAL_CLUSTER_SIZE初始集群节点数(用于自动发现)1
PATRONI_POSTGRESQL_DATA_DIRPostgreSQL 数据目录/var/lib/postgresql/data

4.4.2 TimescaleDB/PostgreSQL 配置(环境变量)

参数名说明默认值
POSTGRES_PASSWORDpostgres 用户密码(必填)-
REPLICATION_PASSWORD复制用户(replicator)密码(必填)-
POSTGRES_DB初始数据库名称postgres
MAX_CONNECTIONS最大连接数100
SHARED_BUFFERS共享内存缓冲区(建议物理内存 1/4)128MB
TIMESCALEDB_AUTO_CREATE_HYPERTABLES是否自动创建时序表on

4.5 故障转移测试

  1. 模拟主节点故障:

    bash
    docker stop patroni-master
    
  2. 观察从节点自动提升: Patroni 会通过 etcd 检测主节点心跳丢失(默认 30 秒内),自动将从节点提升为新主。可通过以下命令验证新主节点:

    bash
    # 进入从节点容器
    docker exec -it patroni-replica bash
    # 查看 Patroni 状态
    patronictl -c /etc/patroni.yml list
    
  3. 恢复原主节点: 重启原主节点后,Patroni 会自动将其作为从节点重新加入集群,同步新主数据:

    bash
    docker start patroni-master
    

五、部署注意事项

  1. 数据持久化:必须通过卷(Volume)挂载 /var/lib/postgresql/data,避免容器重启导致数据丢失。
  2. 密码安全:生产环境需使用强密码,并通过 Docker Secrets 或环境变量文件管理,避免明文暴露。
  3. etcd 高可用:生产环境 etcd 集群需部署 3/5 节点(奇数),防止配置存储单点故障。
  4. 资源配置:根据数据量调整 shared_buffers、work_mem 等参数,建议参考 PostgreSQL 性能调优最佳实践。
  5. 网络隔离:集群节点间需保证网络互通(5432 端口用于复制,2379 端口用于 etcd 通信),生产环境建议配置防火墙规则限制访问。

镜像拉取方式

您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。

轩辕镜像加速拉取命令点我查看更多 timescaledb-ha 镜像标签

docker pull docker.xuanyuan.run/timescale/timescaledb-ha:<标签>

使用方法:

  • 登录认证方式
  • 免认证方式

DockerHub 原生拉取命令

docker pull timescale/timescaledb-ha:<标签>

轩辕镜像配置手册

按平台快速找到配置文档

Docker

登录仓库拉取

登录认证 · 私有仓库

专属域名拉取

免登录 · 高速拉取

Linux

Docker 镜像配置

Windows / Mac

Docker Desktop 配置

MacOS OrbStack

OrbStack 容器

Apple Container

macOS 原生容器

Docker Compose

Compose 项目配置

NAS

群晖

Synology 配置

飞牛

fnOS 镜像配置

绿联

绿联 NAS

威联通

QNAP 配置

极空间

极空间 NAS

Unraid

Unraid NAS

企业仓库

其他仓库

ghcr · Quay · nvcr

Harbor 镜像源

Proxy Repository 对接

Portainer 镜像源

Registries 配置

Nexus 镜像源

Docker Proxy 缓存

开发工具

Dev Containers

VS Code 开发容器

Podman

Podman 配置指南

Singularity / Apptainer

HPC 科学计算容器

Kubernetes

K8s Containerd

Kubernetes · Containerd

K3s

轻量级集群

面板 / 网络

爱快路由

iKuai 镜像加速

宝塔面板

一键配置镜像源

AI

用 AI 使用轩辕镜像

agents.md · AI 对话 · 提示词

一键安装

一键安装 Docker

Linux Docker 一键安装

需要其他帮助?请查看我们的 常见问题Docker 镜像访问常见问题解答 或 提交工单

镜像拉取常见问题

功能

版本功能对比

功能对比 · 版本选择

支持的镜像仓库

Docker Hub · GCR · GHCR

新手拉取配置

登录 · 专属域名 · 配置

docker search 限制

专属域名 · Hub 搜索

不支持 push

仅支持 pull · 不支持

拉取速度原因

带宽 · 缓存 · 冷热镜像

错误码

402 与流量用尽

402 · 流量包 · 充值

401 认证失败

401 · docker login

manifest unknown

标签错误 · 镜像不存在

410 Gone 排查

410 · Docker 升级

429 限流

免费版 · 请求频率

其他报错

DNS 超时

DNS 解析 · 网络超时

TLS 证书失败

no matching manifest(架构)

账号

失败是否计费

manifest · blob · 计费

申请开发票(企业 / 个人)

企业 · 个人 · 工单

修改登录密码

网站 · 仓库 · 重置

注销账户

工单 · 数据 · 注销

原理

mirrors 不生效

daemon.json · 重启

去掉域名前缀

docker tag · 重命名

指定架构拉取

ARM64 · AMD64 · 多架构

latest 与「最新」

digest · 版本号 · 标签

查看全部问题→

用户好评

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

用户头像

oldzhang

运维工程师

Linux服务器

5

"Docker访问体验非常流畅,大镜像也能快速完成下载。"

轩辕镜像
镜像详情
...
timescale/timescaledb-ha
教程轩辕镜像功能与使用教程
定价查看流量套餐与价格
热门查看热门 Docker 镜像推荐
博客Docker 镜像公告与技术博客
专业版 · 高速稳定拉取镜像
高速镜像下载·在线技术支持·99.95% SLA 保障·付费会员免广告
50GB 仅 ¥7/年
专业版 · 高速稳定拉取镜像
50GB 仅 ¥7/年
高速镜像下载·在线技术支持·99.95% SLA 保障·付费会员免广告
商务合作:点击复制邮箱
用户协议·隐私政策·©2024-2026 源码跳动
用户协议·隐私政策©2024-2026 杭州源码跳动科技有限公司商务合作:点击复制邮箱

更多 timescaledb-ha 镜像推荐

timescale/timescaledb logo

timescale/timescaledb

timescale
这是一款专为高性能实时分析场景设计的时序数据库,以PostgreSQL扩展的形式提供,能够无缝集成至PostgreSQL生态系统,高效支持时序数据的实时采集、存储与快速分析,为工业监控、物联网数据追踪、金融市场实时指标等场景提供便捷且高性能的数据管理解决方案,满足用户对大规模时序数据实时处理与深度分析的核心需求。
261 次收藏1亿+ 次下载
25 天前更新
timescale/timescaledb-postgis logo

timescale/timescaledb-postgis

timescale
该镜像已停止维护,若需要PostGIS功能,建议使用timescaledb-ha镜像。
45 次收藏100万+ 次下载
5 年前更新
timescale/prometheus-postgresql-adapter logo

timescale/prometheus-postgresql-adapter

timescale
暂无描述
10 次收藏500万+ 次下载
6 年前更新
timescale/promscale logo

timescale/promscale

timescale
暂无描述
2 次收藏100万+ 次下载
3 年前更新
timescale/timescale-prometheus logo

timescale/timescale-prometheus

timescale
暂无描述
1 次收藏10万+ 次下载
5 年前更新
timescale/timescaledb-wale logo

timescale/timescaledb-wale

timescale
暂无描述
1 次收藏10万+ 次下载
7 年前更新

查看更多 timescaledb-ha 相关镜像

更多相关 Docker 镜像与资源

以下是 timescale/timescaledb-ha 相关的常用 Docker 镜像,适用于 不同场景 等不同场景:

  • timescale/timescaledb Docker 镜像说明(TimescaleDB 时序数据库,PostgreSQL 扩展)
  • library/postgres Docker 镜像说明
  • cimg/postgres Docker 镜像说明(CI/CD 优化版本)
  • ubuntu/postgres Docker 镜像说明(基于 Ubuntu,稳定性更好)
  • elestio/postgres Docker 镜像说明(托管 PostgreSQL 服务,开箱即用)