realtime Docker 镜像下载 - 轩辕镜像
realtime 镜像详细信息和使用指南
realtime 镜像标签列表和版本信息
realtime 镜像拉取命令和加速下载
realtime 镜像使用说明和配置指南
Docker 镜像加速服务 - 轩辕镜像平台
国内开发者首选的 Docker 镜像加速平台
极速拉取 Docker 镜像服务
相关 Docker 镜像推荐
热门 Docker 镜像下载
realtime 镜像详细信息
realtime 镜像标签列表
realtime 镜像使用说明
realtime 镜像拉取命令
Docker 镜像加速服务
轩辕镜像平台优势
镜像下载指南
相关 Docker 镜像推荐
realtime 镜像详细说明
realtime 使用指南
realtime 配置说明
realtime 官方文档
Supabase Realtime
状态说明
| 功能 | v1版 | v2版 | 状态 |
|---|---|---|---|
| Postgres 数据变更 | ✔ | ✔ | 正式可用 |
| 广播(Broadcast) | ✔ | 测试版 | |
| 在线状态(Presence) | ✔ | 测试版 |
本仓库主要维护版本2,版本1的代码和Docker镜像仍可访问。最新Docker镜像可前往 [***] 获取。
代码库处于活跃开发阶段,文档持续更新。欢迎试用并通过创建issue反馈意见,关注发布记录获取更新通知,喜欢的话别忘了点星标!
概述
什么是Supabase Realtime?
这是一个基于Elixir和Phoenix Framework构建的服务器,支持以下功能:
- 广播(Broadcast):低延迟地在客户端间发送临时消息
- 在线状态(Presence):跟踪并同步客户端间的共享状态
- Postgres 数据变更:通过WebSocket监听Postgres数据库的变更
详细介绍可查看Supabase Realtime指南。
消息传递保证
服务器不保证每条消息都能送达客户端,使用时请注意这一点。
快速开始
可查看多人协作演示,演示代码位于仓库的demo目录。
客户端库
- JavaScript:@supabase/realtime-js
- Dart:@supabase/realtime-dart
服务器设置
启动服务
通过docker-compose.yml启动Postgres数据库和Realtime服务器容器,示例命令:
bashdocker-compose -f docker-compose.yml up
注意
Supabase在生产环境中使用独立数据库管理租户,但本地开发时通过docker-compose.yml自动创建_realtime模式简化配置。
启动后会自动添加一个默认租户,可通过查询数据库的_realtime.tenants和_realtime.extensions表确认。
添加自定义租户
如需添加自己的租户,发送POST请求到服务器。需修改name和external_id,其他参数可按需调整:
bashcurl -X POST \ -H 'Content-Type: application/json' \ -H 'Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiIiLCJpYXQiOjE2NzEyMzc4NzMsImV4cCI6MTcwMjc3Mzk5MywiYXVkIjoiIiwic3ViIjoiIn0._ARixa2KFUVsKBf3UGR90qKLCpGjxhKcXY4akVbmeNQ' \ -d $'{ "tenant" : { "name": "realtime-dev", "external_id": "realtime-dev", "jwt_secret": "a1d99c8b-91b6-47b2-8f3c-aa7d9a9ad20f", "extensions": [ { "type": "postgres_cdc_rls", "settings": { "db_name": "postgres", "db_host": "host.docker.internal", "db_user": "postgres", "db_password": "postgres", "db_port": "5432", "region": "us-west-1", "poll_interval_ms": 100, "poll_max_record_bytes": ***, "ip_version": 4 } ] } } }' \ [***]> **注意** > 请求头中的`Authorization`令牌使用`docker-compose.yml`中`API_JWT_SECRET`配置的密钥签名。 ### 监听Postgres变更 1. 创建测试表: ```sql create table test ( id serial primary key );
- 将表添加到
supabase_realtime发布:
sqlalter publication supabase_realtime add table test;
测试功能
可通过以下方式测试广播、在线状态和Postgres变更功能:
- 使用客户端库(如
@supabase/realtime-js) - 访问本地Realtime Inspector:`[***]
WebSocket连接说明
WebSocket URL需包含租户的external_id(作为子域名),且令牌需使用租户的jwt_secret签名。
默认租户示例:
- URL:
ws://realtime-dev.localhost:4000/socket(端口需与开发环境一致) - 令牌:
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3MDMwMjgwODcsInJvbGUiOiJwb3N0Z3JlcyJ9.tz_XJ89gd6bN8MBpCl7afvPrZiBH6RB65iA1FadPT3Y(包含exp和role字段,role为数据库角色)
环境变量配置
Realtime服务器当前与Fly.io耦合紧密,以下是关键环境变量说明:
| 变量名 | 类型 | 说明 |
|---|---|---|
| PORT | {数字} | 客户端/监听器连接的端口 |
| DB_HOST | {字符串} | 数据库主机URL |
| DB_PORT | {数字} | 数据库端口 |
| DB_USER | {字符串} | 数据库用户名 |
| DB_PASSWORD | {字符串} | 数据库密码 |
| DB_NAME | {字符串} | Postgres数据库名 |
| DB_ENC_KEY | {字符串} | 加密_realtime.tenants和_realtime.extensions表敏感字段的密钥(推荐16字符) |
| API_JWT_SECRET | {字符串} | 用于签名管理租户HTTP请求令牌的密钥 |
| MAX_CONNECTIONS | {字符串} | WebSocket连接软上限(默认***) |
| NUM_ACCEPTORS | {字符串} | 处理WebSocket连接请求的进程数(默认100) |
| DB_POOL_SIZE | {字符串} | 数据库连接池大小(默认5) |
WebSocket连接授权
WebSocket连接通过对称JWT验证授权,支持以下签名算法:HS256、HS384、HS512。
必要条件
- 令牌必须包含
exp(过期时间)和role(数据库角色)字段,服务器会自动检查过期时间。 - 可通过
JWT_CLAIM_VALIDATORS设置额外验证规则,例如:{'iss': 'Issuer', 'nbf': ***},则JWT的iss需等于“Issuer”,nbf需等于***。
客户端授权方式
参考Realtime客户端库的使用说明,例如@supabase/realtime-js的Usage部分。
许可证
本仓库采用Apache 2.0许可证。
致谢
- Phoenix:Realtime服务器基于Elixir的Phoenix框架构建。
- Phoenix Channels JavaScript Client:@supabase/realtime-js客户端库大量参考了该库的实现。<|FCResponseEnd|># Supabase Realtime
状态说明
| 功能 | v1版 | v2版 | 状态 |
|---|---|---|---|
| Postgres 数据变更 | ✔ | ✔ | 正式可用 |
| 广播(Broadcast) | ✔ | 测试版 | |
| 在线状态(Presence) | ✔ | 测试版 |
本仓库主要维护版本2,版本1的代码和Docker镜像仍可访问。最新Docker镜像可前往 [***] 获取。
代码库处于活跃开发阶段,文档持续更新。欢迎试用并通过创建issue反馈意见,关注发布记录获取更新通知,喜欢的话别忘了点星标!
概述
什么是Supabase Realtime?
这是一个基于Elixir和Phoenix Framework构建的服务器,支持以下功能:
- 广播(Broadcast):低延迟地在客户端间发送临时消息
- 在线状态(Presence):跟踪并同步客户端间的共享状态
- Postgres 数据变更:通过WebSocket监听Postgres数据库的变更
详细介绍可查看Supabase Realtime指南。
消息传递保证
服务器不保证每条消息都能送达客户端,使用时请注意这一点。
快速开始
可查看多人协作演示,演示代码位于仓库的demo目录。
客户端库
- JavaScript:@supabase/realtime-js
- Dart:@supabase/realtime-dart
服务器设置
启动服务
通过docker-compose.yml启动Postgres数据库和Realtime服务器容器,示例命令:
bashdocker-compose -f docker-compose.yml up
注意
Supabase在生产环境中使用独立数据库管理租户,但本地开发时通过docker-compose.yml自动创建_realtime模式简化配置。
启动后会自动添加一个默认租户,可通过查询数据库的_realtime.tenants和_realtime.extensions表确认。
添加自定义租户
如需添加自己的租户,发送POST请求到服务器。需修改name和external_id,其他参数可按需调整:
bashcurl -X POST \ -H 'Content-Type: application/json' \ -H 'Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiIiLCJpYXQiOjE2NzEyMzc4NzMsImV4cCI6MTcwMjc3Mzk5MywiYXVkIjoiIiwic3ViIjoiIn0._ARixa2KFUVsKBf3UGR90qKLCpGjxhKcXY4akVbmeNQ' \ -d $'{ "tenant" : { "name": "realtime-dev", "external_id": "realtime-dev", "jwt_secret": "a1d99c8b-91b6-47b2-8f3c-aa7d9a9ad20f", "extensions": [ { "type": "postgres_cdc_rls", "settings": { "db_name": "postgres", "db_host": "host.docker.internal", "db_user": "postgres", "db_password": "postgres", "db_port": "5432", "region": "us-west-1", "poll_interval_ms": 100, "poll_max_record_bytes": ***, "ip_version": 4 } ] } } }' \ [***]> **注意** > 请求头中的`Authorization`令牌使用`docker-compose.yml`中`API_JWT_SECRET`配置的密钥签名。 ### 监听Postgres变更 1. 创建测试表: ```sql create table test ( id serial primary key );
- 将表添加到
supabase_realtime发布:
sqlalter publication supabase_realtime add table test;
测试功能
可通过以下方式测试广播、在线状态和Postgres变更功能:
- 使用客户端库(如
@supabase/realtime-js) - 访问本地Realtime Inspector:`[***]
WebSocket连接说明
WebSocket URL需包含租户的external_id(作为子域名),且令牌需使用租户的jwt_secret签名。
默认租户示例:
- URL:
ws://realtime-dev.localhost:4000/socket(端口需与开发环境一致) - 令牌:
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3MDMwMjgwODcsInJvbGUiOiJwb3N0Z3JlcyJ9.tz_XJ89gd6bN8MBpCl7afvPrZiBH6RB65iA1FadPT3Y(包含exp和role字段,role为数据库角色)
环境变量配置
Realtime服务器当前与Fly.io耦合紧密,以下是关键环境变量说明:
| 变量名 | 类型 | 说明 |
|---|---|---|
| PORT | {数字} | 客户端/监听器连接的端口 |
| DB_HOST | {字符串} | 数据库主机URL |
| DB_PORT | {数字} | 数据库端口 |
| DB_USER | {字符串} | 数据库用户名 |
| DB_PASSWORD | {字符串} | 数据库密码 |
| DB_NAME | {字符串} | Postgres数据库名 |
| DB_ENC_KEY | {字符串} | 加密_realtime.tenants和_realtime.extensions表敏感字段的密钥(推荐16字符) |
| API_JWT_SECRET | {字符串} | 用于签名管理租户HTTP请求令牌的密钥 |
| MAX_CONNECTIONS | {字符串} | WebSocket连接软上限(默认***) |
| NUM_ACCEPTORS | {字符串} | 处理WebSocket连接请求的进程数(默认100) |
| DB_POOL_SIZE | {字符串} | 数据库连接池大小(默认5) |
WebSocket连接授权
WebSocket连接通过对称JWT验证授权,支持以下签名算法:HS256、HS384、HS512。
必要条件
- 令牌必须包含
exp(过期时间)和role(数据库角色)字段,服务器会自动检查过期时间。 - 可通过
JWT_CLAIM_VALIDATORS设置额外验证规则,例如:{'iss': 'Issuer', 'nbf': ***},则JWT的iss需等于“Issuer”,nbf需等于***。
客户端授权方式
参考Realtime客户端库的使用说明,例如@supabase/realtime-js的Usage部分。
许可证
本仓库采用Apache 2.0许可证。
致谢
- Phoenix:Realtime服务器基于Elixir的Phoenix框架构建。
- Phoenix Channels JavaScript Client:@supabase/realtime-js客户端库大量参考了该库的实现。
用户好评
来自真实用户的反馈,见证轩辕镜像的优质服务
oldzhang
运维工程师
Linux服务器
"Docker加速体验非常流畅,大镜像也能快速完成下载。"
Nana
后端开发
Mac桌面
"配置Docker镜像源后,拉取速度快了数倍,开发体验提升明显。"
Qiang
平台研发
K8s集群
"轩辕镜像在K8s集群中表现很稳定,容器部署速度明显加快。"
小敏
测试工程师
Windows桌面
"Docker镜像下载不再超时,测试环境搭建更加高效。"
晨曦
DevOps工程师
宝塔面板
"配置简单,Docker镜像源稳定,适合快速部署环境。"
阿峰
资深开发
群晖NAS
"在群晖NAS上配置后,镜像下载速度飞快,非常适合家庭实验环境。"
俊仔
后端工程师
飞牛NAS
"Docker加速让容器搭建顺畅无比,再也不用等待漫长的下载。"
Lily
测试经理
Linux服务器
"镜像源覆盖面广,更新及时,团队一致反馈体验不错。"
浩子
云平台工程师
Podman容器
"使用轩辕镜像后,Podman拉取镜像稳定无比,生产环境可靠。"
Kai
运维主管
爱快路由
"爱快系统下配置加速服务,Docker镜像拉取速度提升非常大。"
翔子
安全工程师
Linux服务器
"镜像源稳定性高,安全合规,Docker拉取无忧。"
亮哥
架构师
K8s containerd
"大规模K8s集群下镜像加速效果显著,节省了大量时间。"
慧慧
平台开发
Docker Compose
"配置Compose镜像加速后,整体构建速度更快了。"
Tina
技术支持
Windows桌面
"配置简单,镜像拉取稳定,适合日常开发环境。"
宇哥
DevOps Leader
极空间NAS
"在极空间NAS上使用Docker加速,体验流畅稳定。"
小静
数据工程师
Linux服务器
"Docker镜像源下载速度快,大数据环境搭建轻松完成。"
磊子
SRE
宝塔面板
"使用轩辕镜像后,CI/CD流程整体快了很多,值得推荐。"
阿Yang
前端开发
Mac桌面
"国内网络环境下,Docker加速非常给力,前端环境轻松搭建。"
Docker迷
架构师
威联通NAS
"威联通NAS下配置镜像加速后,Docker体验比官方源好很多。"
方宇
系统工程师
绿联NAS
"绿联NAS支持加速配置,Docker镜像下载快且稳定。"
常见问题
免费版仅支持 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 登录认证访问私有仓库
Linux
在 Linux 系统配置镜像加速服务
Windows/Mac
在 Docker Desktop 配置镜像加速
Docker Compose
Docker Compose 项目配置加速
K8s Containerd
Kubernetes 集群配置 Containerd
宝塔面板
在宝塔面板一键配置镜像加速
群晖
Synology 群晖 NAS 配置加速
飞牛
飞牛 fnOS 系统配置镜像加速
极空间
极空间 NAS 系统配置加速服务
爱快路由
爱快 iKuai 路由系统配置加速
绿联
绿联 NAS 系统配置镜像加速
威联通
QNAP 威联通 NAS 配置加速
Podman
Podman 容器引擎配置加速
其他仓库配置
ghcr、Quay、nvcr 等镜像仓库
专属域名拉取
无需登录使用专属域名加速
需要其他帮助?请查看我们的 常见问题 或 官方QQ群: 13763429