本站面向开发者与科研用户,提供开源镜像的搜索和下载加速服务。
所有镜像均来源于原始开源仓库,本站不存储、不修改、不传播任何镜像内容。

realtime Docker 镜像下载 - 轩辕镜像

realtime 镜像详细信息和使用指南

realtime 镜像标签列表和版本信息

realtime 镜像拉取命令和加速下载

realtime 镜像使用说明和配置指南

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

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

极速拉取 Docker 镜像服务

相关 Docker 镜像推荐

热门 Docker 镜像下载

realtime
supabase/realtime

realtime 镜像详细信息

realtime 镜像标签列表

realtime 镜像使用说明

realtime 镜像拉取命令

Docker 镜像加速服务

轩辕镜像平台优势

镜像下载指南

相关 Docker 镜像推荐

Supabase Realtime 是 Supabase 生态中的核心实时引擎 Docker 镜像,基于 WebSocket 协议提供高效的数据库变更同步服务,能够实时监听 PostgreSQL 数据库的 INSERT、UPDATE、DELETE 操作,并将数据变更即时推送到客户端,无需轮询请求。该镜像支持多客户端连接管理、消息广播与房间隔离机制,可轻松集成到各类 Web、移动应用中,为实时聊天、协作工具、动态仪表盘等场景提供低延迟数据同步能力,具备自动扩缩容、权限控制及断线重连特性,帮助开发者快速构建高可用的实时应用后端。
15 收藏0 次下载activesupabase镜像

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服务器容器,示例命令:

bash
docker-compose -f docker-compose.yml up

注意
Supabase在生产环境中使用独立数据库管理租户,但本地开发时通过docker-compose.yml自动创建_realtime模式简化配置。

启动后会自动添加一个默认租户,可通过查询数据库的_realtime.tenants_realtime.extensions表确认。

添加自定义租户

如需添加自己的租户,发送POST请求到服务器。需修改nameexternal_id,其他参数可按需调整:

bash
curl -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
);
  1. 将表添加到supabase_realtime发布:
sql
alter 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(包含exprole字段,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服务器容器,示例命令:

bash
docker-compose -f docker-compose.yml up

注意
Supabase在生产环境中使用独立数据库管理租户,但本地开发时通过docker-compose.yml自动创建_realtime模式简化配置。

启动后会自动添加一个默认租户,可通过查询数据库的_realtime.tenants_realtime.extensions表确认。

添加自定义租户

如需添加自己的租户,发送POST请求到服务器。需修改nameexternal_id,其他参数可按需调整:

bash
curl -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
);
  1. 将表添加到supabase_realtime发布:
sql
alter 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(包含exprole字段,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的头像

oldzhang

运维工程师

Linux服务器

5

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

Nana的头像

Nana

后端开发

Mac桌面

4.9

"配置Docker镜像源后,拉取速度快了数倍,开发体验提升明显。"

Qiang的头像

Qiang

平台研发

K8s集群

5

"轩辕镜像在K8s集群中表现很稳定,容器部署速度明显加快。"

小敏的头像

小敏

测试工程师

Windows桌面

4.8

"Docker镜像下载不再超时,测试环境搭建更加高效。"

晨曦的头像

晨曦

DevOps工程师

宝塔面板

5

"配置简单,Docker镜像源稳定,适合快速部署环境。"

阿峰的头像

阿峰

资深开发

群晖NAS

5

"在群晖NAS上配置后,镜像下载速度飞快,非常适合家庭实验环境。"

俊仔的头像

俊仔

后端工程师

飞牛NAS

4.9

"Docker加速让容器搭建顺畅无比,再也不用等待漫长的下载。"

Lily的头像

Lily

测试经理

Linux服务器

4.8

"镜像源覆盖面广,更新及时,团队一致反馈体验不错。"

浩子的头像

浩子

云平台工程师

Podman容器

5

"使用轩辕镜像后,Podman拉取镜像稳定无比,生产环境可靠。"

Kai的头像

Kai

运维主管

爱快路由

5

"爱快系统下配置加速服务,Docker镜像拉取速度提升非常大。"

翔子的头像

翔子

安全工程师

Linux服务器

4.9

"镜像源稳定性高,安全合规,Docker拉取无忧。"

亮哥的头像

亮哥

架构师

K8s containerd

5

"大规模K8s集群下镜像加速效果显著,节省了大量时间。"

慧慧的头像

慧慧

平台开发

Docker Compose

4.9

"配置Compose镜像加速后,整体构建速度更快了。"

Tina的头像

Tina

技术支持

Windows桌面

4.8

"配置简单,镜像拉取稳定,适合日常开发环境。"

宇哥的头像

宇哥

DevOps Leader

极空间NAS

5

"在极空间NAS上使用Docker加速,体验流畅稳定。"

小静的头像

小静

数据工程师

Linux服务器

4.9

"Docker镜像源下载速度快,大数据环境搭建轻松完成。"

磊子的头像

磊子

SRE

宝塔面板

5

"使用轩辕镜像后,CI/CD流程整体快了很多,值得推荐。"

阿Yang的头像

阿Yang

前端开发

Mac桌面

4.9

"国内网络环境下,Docker加速非常给力,前端环境轻松搭建。"

Docker迷的头像

Docker迷

架构师

威联通NAS

5

"威联通NAS下配置镜像加速后,Docker体验比官方源好很多。"

方宇的头像

方宇

系统工程师

绿联NAS

5

"绿联NAS支持加速配置,Docker镜像下载快且稳定。"