PassNAT LogoPassNAT

PostgreSQL 数据库 Web 备份管理工具快速部署,支持自动定时备份和云存储,配置帕斯内网穿透实现外网访问管理

作者

小编

发布时间

Curving abstract shapes with an orange and blue gradient

项目介绍

PG Back Web 是一个专为 PostgreSQL 数据库设计的备份管理工具,提供直观的 Web 界面让用户轻松管理数据库备份。这个项目不仅仅是一个简单的备份工具,它是确保 PostgreSQL 数据安全性和可用性的可靠伙伴。

该项目具有以下特色功能:

- 📦 直观的 Web 界面管理,无需数据库专业知识 - 📅 定时自动备份,设置后无需人工干预 - 📈 备份监控和执行日志可视化 - 📤 支持备份文件的即时下载和恢复 - 🖥 兼容 PostgreSQL 13、14、15、16 和 17 版本 - 📁 支持本地存储和 S3 云存储 - ❤️‍🩹 自动健康检查数据库和存储目标 - 🔔 Webhook 通知功能 - 🔒 PGP 加密保护敏感信息 - 🌚 支持暗色主题

PG Back Web 基于强大的 pg_dump 工具构建,采用 MIT 开源许可证,适合从个人开发者到团队的各种使用场景。

项目地址: 点我跳转

部署安装

如需在外也打开项目需要配置内网穿透使用,点击前往 帕斯内网穿透,先注册好账号备用。

复制下列的配置文件

1services:
2 pgbackweb:
3 image: eduardolat/pgbackweb:latest
4 ports:
5 - '8085:8085' # Access the web interface at http://localhost:8085
6 volumes:
7 - ./backups:/backups # If you only use S3 destinations, you don't need this volume
8 environment:
9 PBW_ENCRYPTION_KEY: 'my_secret_key' # Change this to a strong key
10 PBW_POSTGRES_CONN_STRING: 'postgresql://postgres:password@postgres:5432/pgbackweb?sslmode=disable'
11 TZ: 'Asia/Shanghai' # Set your timezone, optional
12 depends_on:
13 postgres:
14 condition: service_healthy
15
16 postgres:
17 image: postgres:17
18 environment:
19 POSTGRES_USER: postgres
20 POSTGRES_DB: pgbackweb
21 POSTGRES_PASSWORD: password
22 ports:
23 - '5432:5432'
24 volumes:
25 - ./data:/var/lib/postgresql/data
26 healthcheck:
27 test: ['CMD-SHELL', 'pg_isready -U postgres']
28 interval: 5s
29 timeout: 5s
30 retries: 5

打开飞牛 NAS 或其他的 NAS 设备

项目名称可以随便填,点击创建 docker-compose.yml

点击 Compose -> 新建项目

这里需要改成你需要的加密密钥和数据库密码,其他的保持不变。重要的是要修改 PBW_ENCRYPTION_KEY 为一个强密码,以及 POSTGRES_PASSWORD 为你想要的数据库密码。

如果提示端口被占用可以修改下面的字段,但是需要保持格式正确。

创建成功后可以访问 ip:8085 到这里就可以正常显示项目了

穿透公网

打开帕斯内网穿透控制台,点击隧道管理-隧道列表

点击创建新隧道

隧道节点可以随便选,一般选个负载低的就可以

接下来填写信息,隧道名称可以随便填写

本地 IP 默认就可以

传输协议可以选择 TCP 也可以选择 HTTP/HTTPS

HTTP 就是域名的形式,教程以使用 TCP 为演示

本项目中如果没有修改端口的话默认是 8085 端口,这里本地 IP 就填 8085

远程端口可以留空也可以自定义。下图仅做参考,请按照实际项目端口添加。

填写完毕点击确定

点击刚才创建好的隧道,点击获取配置文件

回到飞牛 NAS,点击应用中心下载 frpc 客户端

打开后粘贴刚才复制的配置文件,点击确定即可

复制帕斯内网穿透控制台的访问 IP 和端口

可以看到已经正常穿透成功了

本篇教程结束