轩辕镜像
轩辕镜像专业版
个人中心搜索镜像
交易
充值流量我的订单
工具
工单支持镜像收录Run 助手IP 归属地密码生成Npm 源Pip 源
帮助
常见问题我要吐槽
其他
关于我们网站地图

官方QQ群: 13763429

轩辕镜像
镜像详情
icewind1991/notify_push
官方博客使用教程热门镜像工单支持
本站面向开发者与科研用户,提供开源镜像的搜索和下载加速服务。
所有镜像均来源于原始开源仓库,本站不存储、不修改、不传播任何镜像内容。
轩辕镜像 - 国内开发者首选的专业 Docker 镜像下载加速服务平台 - 官方QQ群:13763429 👈点击免费获得技术支持。
本站面向开发者与科研用户,提供开源镜像的搜索和下载加速服务。所有镜像均来源于原始开源仓库,本站不存储、不修改、不传播任何镜像内容。

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

notify_push Docker 镜像下载 - 轩辕镜像

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

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

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

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

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

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

极速拉取 Docker 镜像服务

相关 Docker 镜像推荐

热门 Docker 镜像下载

notify_push
icewind1991/notify_push

notify_push 镜像详细信息

notify_push 镜像标签列表

notify_push 镜像使用说明

notify_push 镜像拉取命令

Docker 镜像加速服务

轩辕镜像平台优势

镜像下载指南

相关 Docker 镜像推荐

为Nextcloud客户端提供更新通知服务,通过服务器主动推送减少客户端频繁检查,降低服务器负载,提升同步效率。
2 收藏0 次下载activeicewind1991镜像
🚀轩辕镜像专业版更稳定💎一键安装 Docker 配置镜像源
中文简介版本下载
🚀轩辕镜像专业版更稳定💎一键安装 Docker 配置镜像源

notify_push 镜像详细说明

notify_push 使用指南

notify_push 配置说明

notify_push 官方文档

notify_push

概述与主要用途

notify_push是为Nextcloud客户端提供更新通知的应用,旨在解决客户端需定期检查服务器文件变更导致的服务器负载过高问题。通过服务器主动推送更新通知,可大幅减少客户端检查频率,同时客户端仍需定期检查(频率可降低),通知基于“尽力而为”原则,可能存在遗漏或误发情况。

核心功能与特性

  • 减少服务器负载:通过服务器主动推送通知,降低客户端因频繁检查文件变更带来的服务器压力
  • 提升同步效率:客户端无需高频轮询,通过推送通知更快响应文件更新
  • 灵活配置:支持通过Nextcloud的config.php或环境变量配置,确保配置同步
  • 兼容性:需配合Redis服务器使用,适用于各类Nextcloud客户端(Web、桌面及移动客户端)

要求

  • 已部署Redis服务器
  • Nextcloud已配置使用Redis服务器

使用场景

适用于Nextcloud服务器管理员,尤其在客户端数量较多、频繁的更新检查导致服务器负载过高的场景,可优化服务器性能,提升文件同步体验。

详细配置与使用方法

部署步骤

部署需完成三个核心步骤:设置推送服务器、配置反向代理、配置Nextcloud应用。

1. 设置推送服务器

设置服务

推送服务器需作为后台守护进程运行,推荐通过systemd服务管理。创建服务文件/etc/systemd/system/notify_push.service,内容如下:

[Unit]
Description = Push daemon for Nextcloud clients

[Service]
Environment = PORT=3030 # 若该端口已占用,可修改为其他端口
ExecStart = /path/to/push/binary/notify_push /path/to/nextcloud/config/config.php

[Install]
WantedBy = multi-user.target

说明:需根据实际环境调整二进制文件路径(/path/to/push/binary/notify_push)和Nextcloud配置文件路径(/path/to/nextcloud/config/config.php)。

配置参数

推送服务器支持两种配置方式,推荐优先使用Nextcloud的config.php以保持配置同步:

  • 通过config.php配置:自动加载Nextcloud数据库、Redis及实例URL等配置
  • 通过环境变量配置:当无法使用config.php时,设置以下变量(环境变量优先级高于config.php):
    • DATABASE_URL:Nextcloud数据库连接URL,如postgres://user:password@db_host/db_name
    • REDIS_URL:Redis连接URL,如redis://redis_host
    • NEXTCLOUD_URL:Nextcloud实例URL,如[***]

端口配置:仅通过环境变量PORT设置,默认80。

启动服务

配置完成后,启动服务并设置开机自启:

# 启动服务
sudo systemctl start notify_push

# 设置开机自启
sudo systemctl enable notify_push

2. 配置反向代理

强烈建议将推送服务部署在反向代理后,以处理TLS加密并避免开放新端口。可复用Nextcloud现有Web服务器(Nginx或Apache)。

Nginx配置

在Nextcloud的server块中添加以下location配置:

location /push/ {
    proxy_pass http://localhost:3030/; # 若推送服务使用其他端口,需对应修改
    proxy_http_version 1.1;
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection "Upgrade";
    proxy_set_header Host $host;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}

说明:路径末尾斜杠必须保留。修改后重载Nginx:

sudo nginx -s reload
Apache配置

先启用代理模块:

sudo a2enmod proxy
sudo a2enmod proxy_http

在Nextcloud的<VirtualHost>块中添加:

ProxyPass /push/ http://localhost:3030/
ProxyPassReverse /push/ http://localhost:3030/

重启Apache生效:

sudo systemctl restart apache2

3. 配置Nextcloud应用

推送服务器和反向代理配置完成后,启用应用并设置推送服务器URL:

# 启用notify_push应用
occ app:enable notify_push

# 设置推送服务器URL(替换为实际反向代理后的URL)
occ notify_push:setup [***]

说明:应用会自动测试配置是否正确,确保推送服务可正常访问。

开发相关

Nextcloud Web界面开发

开发Nextcloud Web应用时,可使用@nextcloud/notify_push JavaScript库(npm地址)处理认证、连接推送服务器及监听事件。

客户端开发指南

桌面及非Web客户端接收通知的实现步骤:

  1. 获取推送服务器URL:通过认证请求访问[***],从响应的ocs.data.capabilities.notify_push.endpoints.websocket获取WebSocket端点。
  2. 建立连接:使用WebSocket连接到该端点。
  3. 认证:发送用户名和密码完成认证。
  4. 接收通知:认证成功后,客户端将收到以下通知:
    • notify_file:用户文件变更
    • notify_activity:新活动项(文件相关活动可能不触发)
    • notify_notification:通知创建、处理或已忽略

客户端示例代码(JavaScript)

function discover_endpoint(nextcloud_url, user, password) {
    let headers = new Headers();
    headers.set('Accept', 'application/json');
    headers.set('OCS-APIREQUEST', 'true');
    headers.set('Authorization', 'Basic ' + btoa(user + ":" + password));

    return fetch(`${nextcloud_url}/ocs/v2.php/cloud/capabilities`, {
        method: 'GET',
        headers: headers,
    })
        .then(response => response.json())
        .then(json => json.ocs.data.capabilities.notify_push.endpoints.websocket);
}

function listen(url, user, password) {
    let ws = new WebSocket(url);
    ws.onmessage = (msg) => {
        console.log("收到通知:", msg);
    }
    ws.onopen = () => {
        ws.send(user); // 发送用户名
        ws.send(password); // 发送密码
    }
}

// 使用示例
let username = "your_username";
let password = "your_password";
let nextcloud_url = "[***]";
discover_endpoint(nextcloud_url, username, password).then((endpoint) => {
    console.log(`推送服务器地址: ${endpoint}`);
    listen(endpoint, username, password);
});

测试客户端

开发阶段可使用测试客户端(从GitHub Actions下载),命令格式:

test_client [***] 用户名 密码

说明:测试客户端用于验证推送服务是否正常工作,输出接收到的通知信息。

查看更多 notify_push 相关镜像 →
miles170/notify_push logo
miles170/notify_push
by miles170
Nextcloud客户端更新通知服务,通过服务器主动推送更新通知减少客户端频繁检查,降低服务器负载,基于nextcloud/notify_push最新未修改构建。
10K+ pulls
上次更新:2 个月前

常见问题

轩辕镜像免费版与专业版有什么区别?

免费版仅支持 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 错误时,表示流量已耗尽,需要充值流量包以恢复服务。

410 错误问题

通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。

manifest unknown 错误

先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。

镜像拉取成功后,如何去掉轩辕镜像域名前缀?

使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。

查看全部问题→

轩辕镜像下载加速使用手册

探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式

🔐

登录方式进行 Docker 镜像下载加速教程

通过 Docker 登录方式配置轩辕镜像加速服务,包含7个详细步骤

🐧

Linux Docker 镜像下载加速教程

在 Linux 系统上配置轩辕镜像源,支持主流发行版

🖥️

Windows/Mac Docker 镜像下载加速教程

在 Docker Desktop 中配置轩辕镜像加速,适用于桌面系统

📦

Docker Compose 镜像下载加速教程

在 Docker Compose 中使用轩辕镜像加速,支持容器编排

📋

K8s containerd 镜像下载加速教程

在 k8s 中配置 containerd 使用轩辕镜像加速

🔧

宝塔面板 Docker 镜像下载加速教程

在宝塔面板中配置轩辕镜像加速,提升服务器管理效率

💾

群晖 NAS Docker 镜像下载加速教程

在 Synology 群晖NAS系统中配置轩辕镜像加速

🐂

飞牛fnOS Docker 镜像下载加速教程

在飞牛fnOS系统中配置轩辕镜像加速

📱

极空间 NAS Docker 镜像下载加速教程

在极空间NAS中配置轩辕镜像加速

⚡

爱快路由 ikuai Docker 镜像下载加速教程

在爱快ikuai系统中配置轩辕镜像加速

🔗

绿联 NAS Docker 镜像下载加速教程

在绿联NAS系统中配置轩辕镜像加速

🌐

威联通 NAS Docker 镜像下载加速教程

在威联通NAS系统中配置轩辕镜像加速

📦

Podman Docker 镜像下载加速教程

在 Podman 中配置轩辕镜像加速,支持多系统

📚

ghcr、Quay、nvcr、k8s、gcr 等仓库下载镜像加速教程

配置轩辕镜像加速9大主流镜像仓库,包含详细配置步骤

🚀

专属域名方式进行 Docker 镜像下载加速教程

无需登录即可使用轩辕镜像加速服务,更加便捷高效

需要其他帮助?请查看我们的 常见问题 或 官方QQ群: 13763429

商务:17300950906
|©2024-2025 源码跳动
商务合作电话:17300950906|Copyright © 2024-2025 杭州源码跳动科技有限公司. All rights reserved.