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

Relayer镜像用于部署跨链消息中继器,核心功能是将源链的跨链消息(附带 graphic 证明)可靠地提交至目标链,实现不同网络间的消息传递与验证。该镜像封装了消息监听、证明生成、交易签名及目标链提交等完整流程,简化跨链消息中继的部署与运维。
docker run)通过docker run命令启动中继器,需指定源链/目标链参数、密钥及网络配置:
docker run -d \ --name relayer \ -e SOURCE_CHAIN_RPC="[***]" \ -e DEST_CHAIN_RPC="[***]" \ -e PRIVATE_KEY="0xYourPrivateKeyForDestChainTransaction" \ -e PROOF_VERIFIER_CONTRACT="0xDestChainProofVerifierContractAddress" \ -e SOURCE_CHAIN_ID=1 \ -e DEST_CHAIN_ID=5 \ -v ./relayer-data:/app/data \ --network host \ relayer:latest
通过docker-compose.yml管理多环境配置(如测试/生产环境分离):
version: "3.8" services: relayer: image: relayer:latest container_name: relayer restart: unless-stopped environment: - SOURCE_CHAIN_RPC=[***] - DEST_CHAIN_RPC=[***] - PRIVATE_KEY=${RELAYER_PRIVATE_KEY} # 从环境变量文件加载密钥 - PROOF_VERIFIER_CONTRACT=0xDestChainProofVerifierContractAddress - SOURCE_CHAIN_ID=1 - DEST_CHAIN_ID=5 - LOG_LEVEL=info # 日志级别:debug/info/warn/error - MESSAGE_QUEUE_SIZE=2000 # 消息队列缓冲区大小 - RETRY_DELAY=10 # 失败重试延迟(秒) volumes: - ./relayer-data:/app/data # 持久化消息缓存与运行日志 network_mode: host # 直接使用主机网络(或配置自定义桥接网络)
| 环境变量名 | 描述 | 必填 | 默认值 |
|---|---|---|---|
SOURCE_CHAIN_RPC | 源链RPC端点(用于监听跨链事件) | 是 | - |
DEST_CHAIN_RPC | 目标链RPC端点(用于提交消息与证明) | 是 | - |
PRIVATE_KEY | 目标链交易签名私钥(需有足够Gas费用) | 是 | - |
PROOF_VERIFIER_CONTRACT | 目标链证明验证合约地址(消息最终提交的目标合约) | 是 | - |
SOURCE_CHAIN_ID | 源链链ID(用于区分不同网络) | 是 | - |
DEST_CHAIN_ID | 目标链链ID | 是 | - |
LOG_LEVEL | 日志级别(debug/info/warn/error) | 否 | info |
MESSAGE_QUEUE_SIZE | 消息队列缓冲区最大容量(防止内存溢出) | 否 | 1000 |
RETRY_DELAY | 消息提交失败后重试间隔(秒) | 否 | 5 |
GAS_LIMIT | 目标链交易Gas上限 | 否 | 300000 |
POLL_INTERVAL | 源链事件轮询间隔(秒) | 否 | 2 |
/app/data目录用于持久化消息缓存(未提交成功的消息)与运行日志,建议通过宿主机目录挂载(如示例中的./relayer-data:/app/data),避免容器重启后数据丢失。--network host直接使用主机网络,或配置自定义桥接网络并开放出站端口)。适用于开发或测试场景,快速验证跨链消息流程:
# 启动Relayer容器 docker run -d \ --name relayer-test \ -e SOURCE_CHAIN_RPC="[***]" \ -e DEST_CHAIN_RPC="[***]" \ -e PRIVATE_KEY="0xTestnetPrivateKeyWithEth" \ -e PROOF_VERIFIER_CONTRACT="***" \ -e SOURCE_CHAIN_ID=5 \ -e DEST_CHAIN_ID=*** \ -e LOG_LEVEL=debug \ -v ./test-data:/app/data \ relayer:latest # 查看日志验证运行状态 docker logs -f relayer-test
生产环境需配置高可用(如自动重启、资源限制、日志持久化),示例docker-compose.yml:
version: "3.8" services: relayer: image: relayer:latest container_name: relayer-prod restart: always # 容器退出时自动重启 environment: - SOURCE_CHAIN_RPC=[***] - DEST_CHAIN_RPC=[***] - PRIVATE_KEY=${RELAYER_PROD_PRIVATE_KEY} # 从.env文件加载密钥(避免硬编码) - PROOF_VERIFIER_CONTRACT=0xProdProofVerifierContractAddress - SOURCE_CHAIN_ID=1 - DEST_CHAIN_ID=137 - LOG_LEVEL=info - MESSAGE_QUEUE_SIZE=5000 - GAS_LIMIT=500000 volumes: - /data/relayer:/app/data # 宿主机数据卷,持久化消息与日志 networks: - relayer-network # 自定义网络隔离 deploy: resources: limits: cpus: '2' memory: 2G networks: relayer-network: driver: bridge
PRIVATE_KEY需妥善保管,生产环境中建议通过 secrets 管理工具(如Docker Secrets、Kubernetes Secrets)注入,避免明文暴露。免费版仅支持 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 登录方式配置轩辕镜像加速服务,包含7个详细步骤
在 Linux 系统上配置轩辕镜像源,支持主流发行版
在 Docker Desktop 中配置轩辕镜像加速,适用于桌面系统
在 Docker Compose 中使用轩辕镜像加速,支持容器编排
在 k8s 中配置 containerd 使用轩辕镜像加速
在宝塔面板中配置轩辕镜像加速,提升服务器管理效率
在 Synology 群晖NAS系统中配置轩辕镜像加速
在飞牛fnOS系统中配置轩辕镜像加速
在极空间NAS中配置轩辕镜像加速
在爱快ikuai系统中配置轩辕镜像加速
在绿联NAS系统中配置轩辕镜像加速
在威联通NAS系统中配置轩辕镜像加速
在 Podman 中配置轩辕镜像加速,支持多系统
配置轩辕镜像加速9大主流镜像仓库,包含详细配置步骤
无需登录即可使用轩辕镜像加速服务,更加便捷高效
需要其他帮助?请查看我们的 常见问题 或 官方QQ群: 13763429