sippylabs/webrtc_phone这是一个集成Sippy RTPProxy和Sippy B2BUA与WebRTC兼容客户端的技术演示。它包含四个主要组件:
容器启动RTPProxy和B2BUA,监听WSS端口9876/TCP,同时启动Web服务器监听HTTPS端口443/TCP。两者共享容器构建过程中生成的自签名TLS密钥,允许用户打开演示页面并通过WSS将浏览器连接到B2BUA。
HTTPS服务器的唯一作用是允许用户下载HTML/JS文件,在实际实时会话中无其他作用,因此该组件可独立部署。
通过WSS套接字发起的任何注册尝试都会通过SIP/UDP代理到由OUTBOUND_PROXY环境变量控制的外部SIP注册器。
当用户发起呼叫时,B2BUA/RTPProxy会建立两个RTP会话(一个加密,一个明文),并向由OUTBOUND_ROUTE环境变量控制的SIP目的地发起出站SIP呼叫。有关此参数格式,请参见Sippy B2BUA文档的呼叫路由部分。
若未提供OUTBOUND_ROUTE,则会使用OUTBOUND_PROXY作为唯一尝试的路由。
适用于WebRTC与SIP协议互通的技术演示场景,供开发者测试和评估WebRTC客户端与SIP网络的连接能力,验证呼叫建立、媒体传输等功能。
bashdocker pull sippylabs/webrtc_phone:latest
bashdocker run -it --name webrtc_phone -P --network=host \ -e OUTBOUND_PROXY="sip.mypbx.net" \ -d sippylabs/webrtc_phone:latest
OUTBOUND_PROXY:外部SIP注册器地址,用于代理注册尝试和作为默认呼叫路由(当未设置OUTBOUND_ROUTE时)OUTBOUND_ROUTE:呼叫目的地路由,格式参见Sippy B2BUA的呼叫路由文档RTPP_LOG_LEVEL:控制RTP日志级别,可选值:DBUG、INFO、WARN、ERR、CRIT(详细程度递减)RTPP_NODEBUG:性能关键场景下设置为1以禁用调试信息MIN_RTP_PORT:RTPProxy分配的UDP端口范围起始值MAX_RTP_PORT:RTPProxy分配的UDP端口范围结束值(每个会话分配4个端口,范围至少为预期最大并发会话数×4)容器会生成各种SIP/RTP/WSS日志,可通过docker logs命令查看。RTP日志量可通过RTPP_LOG_LEVEL环境变量控制,可选值按详细程度从高到低为:DBUG、INFO、WARN、ERR、CRIT。
在当前配置下,单个容器最多可支持500个并发用户,充分利用5-6个核心。若用于性能关键场景,建议运行容器时设置RTPP_NODEBUG=1。
RTPProxy分配的UDP端口范围可通过MIN_RTP_PORT和MAX_RTP_PORT参数控制。每个会话分配4个端口,因此端口范围至少应为预期最大并发会话数的4倍。
1015。在Chrome和Microsoft Edge中,用户打开演示页面时接受安全警告后可正常工作,这是由于使用自签名证书导致的。host网络模式。探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录认证访问私有仓库
无需登录使用专属域名
Kubernetes 集群配置 Containerd
K3s 轻量级 Kubernetes 镜像加速
VS Code Dev Containers 配置
Podman 容器引擎配置
HPC 科学计算容器配置
ghcr、Quay、nvcr 等镜像仓库
Harbor Proxy Repository 对接专属域名
Portainer Registries 加速拉取
Nexus3 Docker Proxy 内网缓存
需要其他帮助?请查看我们的 常见问题Docker 镜像访问常见问题解答 或 提交工单
manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务