本文共计2054字,预计需要花费 3分钟才能阅读完成。
大家有没有和我一样,每天起床习惯先打开知乎、百度热搜、微博等新闻平台,浏览一下当天的头条新闻?每天都要逐个点开这些网站,再挑选感兴趣的新闻深入阅读,确实有些繁琐。今天在浏览GitHub时,我发现了一个名为NewsNow的项目,这是一款能够优雅地阅读实时热门新闻的聚合平台。接下来,我将为大家详细介绍这个项目,并分享如何通过 NAS 进行私有化部署。
🤔 NewsNow 是什么?
🎬 NewsNow 是一个聚合新闻内容的在线平台,它将包括微博、知乎、抖音、GitHub、华尔街、Hacker News 等不同来源的热点新闻报道集中在一起,还能让我们根据自己的需求选择关注的新闻源,从而让我们获取资讯的方式更加快捷和高效。
🚀 功能特性
- 📰 优雅的阅读界面设计,实时获取最新热点新闻
- 🔐 支持 GitHub 登录及数据同步
- ⏱️ 默认缓存时长为 30 分钟,登录用户可强制刷新获取最新数据
- 🔄 根据内容源更新频率动态调整抓取间隔(最快每 2 分钟),避免频繁抓取导致 IP 被封禁
- 🧩 支持 MCP server
🐳 安装指南
下面通过 NAS 的 Docker Compose 进行部署,同时给出了命令部署 Docker 镜像,可以根据自己实际需求进行部署。更多 部署指南 请参考官方说明。
单容器部署
docker volume create newsnow_data
docker run -d \
--name newsnow \
--restart always \
-p 4444:4444 \
-v newsnow_data:/usr/app/.data \
-e G_CLIENT_ID= \
-e G_CLIENT_SECRET= \
-e JWT_SECRET= \
-e INIT_TABLE=true \
-e ENABLE_CACHE=true \
ghcr.io/ourongxing/newsnow:latest
国内镜像:xget.xi-xu.me/cr/ghcr/ourongxing/newsnow:latest
Docker Compose 部署(本文使用)
docker-compose.yml
文件:
services:
newsnow:
image: ghcr.io/ourongxing/newsnow:latest
container_name: newsnow
restart: always
ports:
- '4444:4444'
volumes:
- newsnow_data:/usr/app/.data
environment:
G_CLIENT_ID: ""
G_CLIENT_SECRET: ""
JWT_SECRET: ""
INIT_TABLE: "true"
ENABLE_CACHE: "true"
volumes:
newsnow_data:
name: newsnow_data
4444
:冒号前面端口号可以更改为未使用端口G_CLIENT_ID
:你的 GitHub OAuth 应用的 Client ID,此参数默认为空即可。G_CLIENT_SECRET
:你的 GitHub OAuth 应用的 Client Secret,此参数默认为空即可。JWT_SECRET
:JWT Secret, 通常就用 Clien Secret,此参数默认为空即可。INIT_TABLE
:初始化数据库, 首次运行必须设置为 true,之后可以将其关闭。ENABLE_CACHE
:是否启用缓存。- 国内镜像:
xget.xi-xu.me/cr/ghcr/ourongxing/newsnow:latest
部署
1. 在飞牛主页面找到 Docker
打开后,切换菜单 Compose
-> 新增项目
2. 创建项目页面根据实际情况定义 项目名称
、选择 路径
,并把上面 docker-compose.yml
文件内容复制填入 来源
文本框内容。检查无误后点击 确定
按钮进行部署
3. 返回 Docker
管理页面,在 容器
菜单,就可以看到运行情况,点击 newsnow
右侧🔗可以直接打开
使用
1. 在浏览器地址输入:http://<NAS地址>:4444,即可访问 NewsNow
服务
2. 定制自己关注的新闻
更多功能请自行探索了。
总结
NewsNow是一个功能强大且易于上手的新闻聚合项目,通过简单的部署步骤,你就可以拥有一个属于自己的个性化新闻聚合平台。无论是学习TypeScript、了解Web开发,还是打造专属的新闻阅读工具,NewsNow都是一个不错的选择。
正文完