轩辕镜像
轩辕镜像专业版
个人中心搜索镜像
交易
充值流量我的订单
工具
工单支持镜像收录Run 助手IP 归属地密码生成Npm 源Pip 源
帮助
常见问题我要吐槽
其他
关于我们网站地图

官方QQ群: 13763429

轩辕镜像
镜像详情
kartoza/pg-backup
官方博客使用教程热门镜像工单支持
本站面向开发者与科研用户,提供开源镜像的搜索和下载加速服务。
所有镜像均来源于原始开源仓库,本站不存储、不修改、不传播任何镜像内容。
轩辕镜像 - 国内开发者首选的专业 Docker 镜像下载加速服务平台 - 官方QQ群:13763429 👈点击免费获得技术支持。
本站面向开发者与科研用户,提供开源镜像的搜索和下载加速服务。所有镜像均来源于原始开源仓库,本站不存储、不修改、不传播任何镜像内容。

本站支持搜索的镜像仓库:Docker Hub、gcr.io、ghcr.io、quay.io、k8s.gcr.io、registry.gcr.io、elastic.co、mcr.microsoft.com

pg-backup Docker 镜像下载 - 轩辕镜像

pg-backup 镜像详细信息和使用指南

pg-backup 镜像标签列表和版本信息

pg-backup 镜像拉取命令和加速下载

pg-backup 镜像使用说明和配置指南

Docker 镜像加速服务 - 轩辕镜像平台

国内开发者首选的 Docker 镜像加速平台

极速拉取 Docker 镜像服务

相关 Docker 镜像推荐

热门 Docker 镜像下载

pg-backup
kartoza/pg-backup
自动构建

pg-backup 镜像详细信息

pg-backup 镜像标签列表

pg-backup 镜像使用说明

pg-backup 镜像拉取命令

Docker 镜像加速服务

轩辕镜像平台优势

镜像下载指南

相关 Docker 镜像推荐

一个简单的Docker容器,用于运行PostgreSQL/PostGIS备份(无需PostGIS,可备份任何PG数据库),主要与kartoza/postgis镜像配合使用,默认每晚23点执行备份,备份文件按年/月目录结构组织存储。
7 收藏0 次下载activekartoza镜像
🚀轩辕镜像专业版更稳定💎一键安装 Docker 配置镜像源
中文简介版本下载
🚀轩辕镜像专业版更稳定💎一键安装 Docker 配置镜像源

pg-backup 镜像详细说明

pg-backup 使用指南

pg-backup 配置说明

pg-backup 官方文档

Docker PG Backup

镜像概述和主要用途

Docker PG Backup是一个轻量级Docker容器,专门用于执行PostgreSQL和PostGIS数据库的备份任务。它设计用于与kartoza/postgis镜像配合使用,默认配置为每晚23点自动执行备份,并将备份文件按年/月层级目录结构组织存储,便于管理和追溯。

核心功能和特性

  • 灵活备份:支持备份任何PostgreSQL数据库,无需依赖PostGIS
  • 定时任务:默认每日23点自动执行备份,支持自定义配置
  • 版本匹配:提供特定版本标签,确保与目标PostgreSQL数据库版本兼容
  • 备份管理:支持按天数自动清理旧备份文件
  • 存储选项:默认本地存储,可选配置S3兼容对象存储备份
  • 自定义命名:支持自定义备份文件名格式
  • 多库备份:可指定多个数据库进行批量备份
  • 恢复功能:提供配套恢复脚本,支持数据库恢复操作

使用场景和适用范围

  • 需要定期备份PostgreSQL/PostGIS数据库的环境
  • 使用kartoza/postgis镜像部署数据库的场景
  • 需按时间维度组织备份文件的需求
  • 需要将备份文件存储到S3或兼容对象存储的场景
  • 希望通过Docker容器化方式管理备份任务的环境

详细使用方法和配置说明

获取镜像

推荐方式:拉取官方可信构建镜像

docker pull kartoza/pg-backup:latest
docker pull kartoza/pg-backup:${VERSION}  # 例如 VERSION=13.0

重要:强烈建议使用与目标PostgreSQL镜像版本匹配的标签(如使用13.0版本备份kartoza/postgis:13.0数据库)。latest标签可能会变更,可能导致备份失败。

手动构建镜像

若需自行构建(会消耗更多带宽,需每次拉取依赖包):

git clone [***]
cd docker-pg-backup
./build.sh  # 构建最新版本

运行容器

基本运行命令

docker run --name="backups" --hostname="pg-backups" --link db1:db -v backups:/backups -i -d kartoza/pg-backup:13.0

参数说明:

  • --link db1:db:连接到名为db1的数据库容器(别名db)
  • -v backups:/backups:挂载本地卷backups到容器内/backups目录,用于存储备份文件
  • --name="backups":指定容器名称
  • --hostname="pg-backups":设置容器主机名

环境变量配置

通过环境变量可自定义数据库连接参数、备份策略等,常用变量如下:

环境变量默认值说明
POSTGRES_USERdocker数据库连接用户名
POSTGRES_PASSdocker数据库连接密码
POSTGRES_PORT5432数据库端口
POSTGRES_HOSTdb数据库主机名(通常为链接的数据库容器别名)
POSTGRES_DBNAMEgis默认数据库名(当未指定DBLIST时使用)
ARCHIVE_FILENAME空自定义备份文件名格式,为空时使用默认格式
DBLIST空空格分隔的数据库列表(如gis postgres),默认备份所有数据库
REMOVE_BEFORE空保留最近N天的备份,删除更早的备份(如30保留30天内备份)
DUMP_ARGS-Fcpg_dump参数,默认生成压缩备份(-Fc为自定义格式)
RESTORE_ARGS-j 4pg_restore参数,默认4个并行任务
STORAGE_BACKENDFILE存储后端,可选FILE(本地)或s3(S3兼容存储)
DB_TABLES空设置为yes时,将数据库中所有表分别导出为独立备份

环境变量使用示例

docker run -e POSTGRES_USER=bob -e POSTGRES_PASS=secret -e REMOVE_BEFORE=7 --link db:db -v backups:/backups -d kartoza/pg-backup:13.0

备份文件命名格式

默认命名格式

未指定ARCHIVE_FILENAME时,备份文件路径格式为:

/backups/$(date +%Y)/$(date +%B)/${DUMPPREFIX}_${DB}.$(date +%d-%B-%Y).dmp

示例(DUMPPREFIX=PG,数据库名gis):

/backups/2019/February/PG_gis.13-February-2019.dmp

自定义命名格式

指定ARCHIVE_FILENAME时,将使用固定前缀命名,示例(ARCHIVE_FILENAME=/backups/latest):

/backups/latest.gis.dmp

配置S3存储备份

支持将备份文件存储到S3兼容对象存储,需配置以下环境变量:

环境变量说明
ACCESS_KEY_IDS3访问密钥ID
SECRET_ACCESS_KEYS3密钥
DEFAULT_REGION默认区域(默认:us-west-2)
HOST_BASES3服务地址(如MinIO的地址)
HOST_BUCKETS3桶地址格式
SSL_SECURE是否启用SSL(默认:True)
EXTRA_CONF额外s3cmd配置内容
BUCKET目标存储桶名称(默认:backups)

完整配置示例可参考项目仓库中的docker-compose-s3.yml文件

数据库恢复

恢复准备

使用配套的restore.sh脚本执行恢复操作,需预先设置以下环境变量:

环境变量说明
TARGET_DB目标数据库名称
WITH_POSTGIS是否生成PostGIS扩展(kartoza特定配置)
TARGET_ARCHIVE备份文件完整路径

警告:恢复脚本会删除与TARGET_DB同名的现有数据库,请谨慎操作。建议恢复到新数据库(如gis_restore),验证后再手动替换原数据库。

恢复命令示例

通过docker-compose执行恢复:

docker-compose exec dbbackup /backup-scripts/restore.sh

部署示例

docker-compose配置示例

version: '3'

services:
  dbbackup:
    image: kartoza/pg-backup:13.0
    container_name: backups
    hostname: pg-backups
    links:
      - db:db
    volumes:
      - backups:/backups
    environment:
      - POSTGRES_USER=postgres
      - POSTGRES_PASS=securepassword
      - POSTGRES_DBNAME=gis
      - REMOVE_BEFORE=30
      - DUMPPREFIX=prod_backup
    restart: unless-stopped

  db:
    image: kartoza/postgis:13.0
    environment:
      - POSTGRES_USER=postgres
      - POSTGRES_PASS=securepassword
      - POSTGRES_DB=gis
    volumes:
      - pgdata:/var/lib/postgresql/data

volumes:
  backups:
  pgdata:

credits

Tim Sutton ()
Admire Nyakudya (
)
Rizky Maulana (***)

December 2020

查看更多 pg-backup 相关镜像 →

常见问题

轩辕镜像免费版与专业版有什么区别?

免费版仅支持 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 错误时,表示流量已耗尽,需要充值流量包以恢复服务。

410 错误问题

通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。

manifest unknown 错误

先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。

镜像拉取成功后,如何去掉轩辕镜像域名前缀?

使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。

查看全部问题→

轩辕镜像下载加速使用手册

探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式

🔐

登录方式进行 Docker 镜像下载加速教程

通过 Docker 登录方式配置轩辕镜像加速服务,包含7个详细步骤

🐧

Linux Docker 镜像下载加速教程

在 Linux 系统上配置轩辕镜像源,支持主流发行版

🖥️

Windows/Mac Docker 镜像下载加速教程

在 Docker Desktop 中配置轩辕镜像加速,适用于桌面系统

📦

Docker Compose 镜像下载加速教程

在 Docker Compose 中使用轩辕镜像加速,支持容器编排

📋

K8s containerd 镜像下载加速教程

在 k8s 中配置 containerd 使用轩辕镜像加速

🔧

宝塔面板 Docker 镜像下载加速教程

在宝塔面板中配置轩辕镜像加速,提升服务器管理效率

💾

群晖 NAS Docker 镜像下载加速教程

在 Synology 群晖NAS系统中配置轩辕镜像加速

🐂

飞牛fnOS Docker 镜像下载加速教程

在飞牛fnOS系统中配置轩辕镜像加速

📱

极空间 NAS Docker 镜像下载加速教程

在极空间NAS中配置轩辕镜像加速

⚡

爱快路由 ikuai Docker 镜像下载加速教程

在爱快ikuai系统中配置轩辕镜像加速

🔗

绿联 NAS Docker 镜像下载加速教程

在绿联NAS系统中配置轩辕镜像加速

🌐

威联通 NAS Docker 镜像下载加速教程

在威联通NAS系统中配置轩辕镜像加速

📦

Podman Docker 镜像下载加速教程

在 Podman 中配置轩辕镜像加速,支持多系统

📚

ghcr、Quay、nvcr、k8s、gcr 等仓库下载镜像加速教程

配置轩辕镜像加速9大主流镜像仓库,包含详细配置步骤

🚀

专属域名方式进行 Docker 镜像下载加速教程

无需登录即可使用轩辕镜像加速服务,更加便捷高效

需要其他帮助?请查看我们的 常见问题 或 官方QQ群: 13763429

商务:17300950906
|©2024-2025 源码跳动
商务合作电话:17300950906|Copyright © 2024-2025 杭州源码跳动科技有限公司. All rights reserved.