Homepage在极空间上怎么维护首页?services.yaml放服务,settings.yaml管样式,bookmarks.yaml存书签

本文介绍在极空间NAS上通过Docker Compose部署Homepage作为家庭自建服务统一首页的方法。核心配置分离为services.yaml(服务入口)、settings.yaml(主题与样式)、bookmarks.yaml(书签管理),实现YAML驱动的可维护性配置。同时集成cpolar实现内网穿透,提供固定二级子域名的公网访问能力,确保Homepage可在局域网外稳定使用。

前言

自建服务越来越多以后,最先变乱的通常不是容器本身,而是入口。媒体库、下载器、笔记、监控、NAS后台各有一个地址,再加上平时常用的网站和书签,时间一长,浏览器首页很容易变成一排难维护的收藏夹。

Homepage适合做这层“入口页”。它本身不替代Jellyfin、Home Assistant、Portainer这些服务,而是把服务链接、书签、页面布局和主题配置整理到一个可以长期维护的浏览器首页里。

这篇在极空间上通过Docker Compose运行Homepage。服务启动以后,会分别编辑services.yaml、settings.yaml和bookmarks.yaml:服务入口放进services,页面语言与主题交给settings,普通书签则单独维护在bookmarks里。

这样配置的好处,是以后新增一个服务、改一组书签或调整页面样式时,不必把所有内容混在同一个文件中。刷新页面以后就能直接看到配置变化,也方便继续扩充家庭实验室里的其他入口。

对于已经同时维护多个NAS应用和常用网站的人来说,这种分工会比把所有入口堆进一份配置更清楚。

后半段再加入cpolar,让原本只在局域网打开的Homepage也能从其他网络环境访问。整篇真正跑的是极空间运行Homepage → 分别配置服务、页面设置和书签 → 刷新验证首页 → 外部设备继续访问这条链。

1.什么是Homepage?

核心特点

  1. 为 Docker 和自建服务而生
  • 原生支持通过 Docker Compose 部署;
  • 可自动发现局域网中的服务(如通过 docker.sock 获取容器信息);
  • 轻松集成 Plex、Jellyfin、Home Assistant、Portainer、Immich、Radarr、Sonarr、qBittorrent 等主流自建应用。
  1. 极简但强大:配置即代码(YAML 驱动)
  • 所有布局、分组、图标、链接均通过 services.yaml、widgets.yaml 等配置文件定义;
  • 支持 Git 管理配置,便于版本控制与多设备同步;
  • 无需数据库,启动快,资源占用低。
  1. 页面样式与响应式布局
  • 默认提供深色主题、图标与卡片式布局;
  • 支持响应式设计,适配桌面、平板甚至手机浏览器;
  • 可嵌入实时小部件(Widgets),如系统状态、天气、时间、Docker 容器状态等。
  1. 完全本地运行,隐私优先
  • 不依赖任何外部 API 或云服务;
  • 所有数据存储在本地,无追踪、无广告、无遥测;
  • 适合对隐私和数据主权有高要求的用户。
  1. 灵活扩展,自由定制
  • 支持自定义 CSS 主题;
  • 可添加书签、快捷链接、分类标签;
  • 小部件(Widgets)支持 CPU/内存监控、网络状态、日历、待办事项等(部分需配合其他服务如 Glances、Uptime Kuma)。

典型使用场景

  • 家庭服务器首页:打开浏览器就看到所有服务入口
  • NAS 控制面板:聚合媒体、下载、备份、监控等功能
  • 开发者工作台:快速跳转到本地开发环境、文档、数据库
  • 极客数字桌面:打造如《钢铁侠》中 J.A.R.V.I.S. 风格的交互界面

官方资源

如果家里的自建服务和书签已经比较多,Homepage更适合承担“统一首页”这一层:服务继续各自运行,入口则集中放在一个长期维护的页面里。

2.前提条件

2.1ssh远程连接到极空间

  • 开启【SSH 服务】
  • 使用终端(Windows PowerShell / Mac Terminal)登录:
ssh root@IP

image-20260522154032880

2.2验证docker是否开启

使用命令:

docker -v 
systemctl status -v

image-20251017103712618

3.部署Homepage

通过Docker部署Homepage:

在开始部署之前,确保你的系统已经安装了Docker。可以通过以下命令检查 Docker 是否已安装:

docker --version

image-20260507155742946

首先创建一下安装的目录并进入到该目录:

mkdir -p /docker/homep
chmod -R 777 /homep

image-20260522145347420

创建并编辑 docker-compose.yml文件:

vi docker-compose.yml
version: "3.3"

services:
  homepage:
    image: ghcr.io/benphelps/homepage:latest
    container_name: homepage
    ports:
      - 3344:3000
    volumes:
      - ./config:/app/config
      - ./icons:/app/public/icons
      - /var/run/docker.sock:/var/run/docker.sock

启动容器:

docker-compose up -d

image-20260522145404899

部署完成后,在浏览器中输入 http://极空间IP:3344 就能看到Homepage的界面:

image-20260522145527004

4.使用Homepage

编辑/docker/homep/config目录下的services.yaml文件,添加自己常用的网站:

vi services.yaml
- 搜索引擎:
    - Google:
        icon: google.png
        href: https://google.com
        description: 一个好用的搜索引擎
    - 百度:
        icon: baidu.svg
        href: https://baidu.com
        description: 一个可能好用的搜索引擎

- 网盘:
    - 百度网盘:
        icon: baidudrive.png
        href: https://pan.baidu.com

    - 阿里云盘:
        icon: alidrive.png
        href: https://www.alipan.com

    - 123云盘:
        icon: 123pan.png
        href: https://www.123pan.com/
- Nas必备:
    - typecho:
        href: http://localhost:90
        description: 打造个人网页

    - onenav:
        href: http://localhost:3080
        description: 便签

    - logseq:
        href: http://localhost:9090
        description: 日记😎

image-20260522151722290

刷新网页即文件生效:

image-20260522151454403

编辑/docker/homep/config目录下的settings.yaml文件,添加自己常用设置,让它看起来更加简洁:

vi settings.yaml
  language: zh-CN # 中文
  theme: light # 白色主题
  color: gray # 设置颜色并禁用调色盘
  hideVersion: true # 隐藏版本号

image-20260522151636277

编辑/docker/homep/config目录下的bookmarks.yaml文件,用于配置书签:

vi bookmarks.yaml
- 书签:
    - Github:
        - abbr: GH
          href: https://github.com/

    - Reddit:
        - abbr: RE
          href: https://reddit.com/

    - YouTube:
        - abbr: YT
          href: https://youtube.com/

image-20260522152140866

刷新网页即文件生效:

image-20260522152153875

到这里,服务入口、页面设置和普通书签这三类配置已经分别走过一遍:

image-20260522152253329

前面的Homepage已经能够在局域网中正常使用。如果还希望从其他网络环境打开这张首页,就需要再给Homepage增加一个外部访问入口。

这里继续使用cpolar,让运行在极空间上的Homepage页面可以从局域网之外访问。Homepage负责整理和展示服务入口、书签与页面配置,cpolar负责扩展这个首页本身的访问范围。

5.安装cpolar实现外部访问

5.1 什么是cpolar?

cpolar是一款安全高效的内网穿透工具,无需公网IP或复杂配置,只需一条命令,即可将本地服务器、Web服务或任意端口映射到公网,让你随时随地远程访问内网应用,特别适合开发调试、远程运维和应急部署等场景。

5.2 部署cpolar

cpolar 可以将你本地电脑中的服务(如 SSH、Web、数据库)映射到公网。即使你在家里或外出时,也可以通过公网地址连接回本地运行的开发环境。

❤️以下是安装cpolar步骤:

使用一键脚本安装命令:

sudo curl https://get.cpolar.sh | sh

image-20250725104019896

安装完成后,执行下方命令查看cpolar服务状态:(如图所示即为正常启动)

sudo systemctl status cpolar

22e5adfaf290a17fc3384bb296055259

Cpolar安装和成功启动服务后,在浏览器上输入虚拟机主机IP加9200端口即:【http://ip:9200】访问Cpolar管理界面,使用Cpolar官网注册的账号登录,登录后即可看到cpolar web 配置界面,接下来在web 界面配置即可:

打开浏览器访问本地9200端口,使用cpolar账户密码登录即可,登录后即可对隧道进行管理。

8a6698b1bf26d64ba3645827fbfb1c29

6.配置公网地址

登录cpolar web UI管理界面后,点击左侧仪表盘的隧道管理——创建隧道:

  • 隧道名称:可自定义,本例使用了:homepage,注意不要与已有的隧道名称重复
  • 协议:http
  • 本地地址:3344
  • 域名类型:随机域名
  • 地区:选择China Top

image-20260522152752836

创建成功后,打开左侧在线隧道列表,可以看到刚刚通过创建隧道生成了公网地址,接下来就可以在其他电脑或者移动端设备(异地)上,使用地址访问。

image-20260522153012580

访问成功。

image-20260522153047974

7.保留固定公网地址

使用cpolar为其配置二级子域名(cpolar官网-安全的内网穿透工具 | 无需公网ip | 远程访问 | 搭建网站),该地址为固定地址,不会随机变化。

image-20250918151358733

点击左侧的预留,选择保留二级子域名,地区选择china Top,然后设置一个二级子域名名称,我使用的是homepage1,大家可以自定义。填写备注信息,点击保留。

image-20260522153302408

登录cpolar web UI管理界面,点击左侧仪表盘的隧道管理——隧道列表,找到所要配置的隧道,点击右侧的编辑。

image-20260522153359331

修改隧道信息,将保留成功的二级子域名配置到隧道中

  • 域名类型:选择二级子域名
  • Sub Domain:填写保留成功的二级子域名
  • 地区: China Top

点击更新

image-20260522153452807

更新完成后,打开在线隧道列表,此时可以看到随机的公网地址已经发生变化,地址名称也变成了保留和固定的二级子域名名称。

image-20260522153658024

最后,我们使用固定的公网地址在任意设备的浏览器中访问,可以看到成功访问的页面,这样一个永久不会变化的二级子域名公网网址即设置好了。

image-20260522153723770

总结

这篇真正完成的是一套“把家庭服务入口做成长期首页”的Homepage使用流程:先在极空间上通过Docker Compose运行Homepage,再分别维护服务、页面设置和普通书签。

services.yaml负责服务入口,settings.yaml负责语言、主题等页面设置,bookmarks.yaml则继续放普通书签。正文分别修改这三类配置,并通过刷新页面确认变化已经生效。

这种拆分方式更适合后续长期维护。新增一个NAS服务时改services,调整页面样式时改settings,增加常用网站时改bookmarks,不需要把所有内容挤在一份配置里,也更容易看清每部分在控制什么。

后半段加入cpolar以后,这张Homepage首页还能从局域网之外继续访问。极空间负责长期运行容器,Homepage负责整理入口和页面,cpolar负责外部访问地址,这样家里的自建服务就多了一张可以持续维护的浏览器首页。

内容概要:本文提出了一种基于灵敏度分析的有源配电网智能软开关(SOP)优化配置方法,旨在应对高比例分布式电源接入带来的电压波动与网络损耗加剧等问题。研究以IEEE33节点系统为算例,通过改进的灵敏度分析模型量化各节点对电压和功率流动的影响程度,进而构建SOP选址与定容的优化模型,实现降低网损、改善电压分布及提升系统运行灵活性的目标。全文详细阐述了灵敏度指标的数学推导、目标函数与约束条件的建模过程,并基于Matlab实现了完整的仿真求解流程,具备良好的工程实用性与学术参考价值。; 适合人群:电力系统及其自动化、电气工程等相关专业的硕士博士研究生、科研机构研究人员,以及从事智能配电网规划、运行与优化的工程技术人员。; 使用场景及目标:①研究分布式电源大规模接入背景下配电网的主动调控与优化策略;②指导智能软开关在实际配电网中的科学选址与容量配置;③为相关科研课题提供可复现的仿真案例,支撑学术论文撰写与算法验证。; 阅读建议:建议读者结合提供的Matlab代码与IEEE33节点标准模型进行动手实践,重点理解灵敏度指标的物理意义及其在优化模型中的应用逻辑,关注求解过程中的约束设置与算法收敛性,并可进一步拓展至SOP与储能联合配置、多时间尺度优化等复杂场景进行二次开发与研究。
内容概要:本文聚焦于基于模型预测控制(MPC)的光伏供电DC-AC变换器系统设计与仿真研究,依托MATLAB/Simulink平台构建完整的系统模型,深入探讨MPC控制策略在光伏发电系统中的应用价值。研究首先建立DC-AC变换器的精确数学模型,结合光伏发电的间歇性与负载波动特性,设计适用于非线性、多约束系统的MPC控制器。通过滚动优化与反馈校正机制,实现对输出电压、频率及电能质量的高精度调控,有效提升系统的动态响应能力与运行稳定性。文中详细阐述了控制算法的设计流程、仿真模型搭建方法、关键参数整定策略,并通过仿真实验验证了MPC在抑制功率波动、降低谐波畸变、改善并网波形质量等方面的显著优势,展示了其在现代智能电网与分布式能源系统中的广阔应用前景。; 适合人群:具备电力电子、自动控制理论基础,熟悉MATLAB/Simulink仿真环境,从事新能源发电、微电网控制、电力系统自动化等相关领域研究的研究生、科研人员及工程技术人员。; 使用场景及目标:①用于光伏发电系统中DC-AC变换器先进控制策略的教学演示与科研探索;②为提升光伏并网系统的电能质量、动态性能与抗干扰能力提供技术支撑与解决方案;③支持科研人员开展控制算法对比、仿真验证、论文复现及实际工程项目开发。; 阅读建议:建议结合文中所述Simulink仿真模型与配套代码进行动手实践,重点关注MPC控制器的成本函数构建、预测时域选择与约束条件设置等核心环节,同时可参考团队提供的其他电力系统优化案例进行横向对比分析,以深化对先进控制理论的理解与工程应用能力。
摘 要 在“互联网+医疗”深度融合的政策导向与行业需求下,我国医疗资源分布不均、传统就医模式时空受限等问题日益凸显。优质医疗资源过度集中于大城市三甲医院,基层医疗机构服务能力不足,导致群众跨区域就医成本高、就医流程繁琐,难以满足碎片化、即时性的健康咨询需求。《“健康中国 2030” 规划纲要》明确支持在线健康服务发展,而现有平台存在功能单一、健康档案管理不规范、医患交互效率低等短板,为此,开发一款功能完善的在线医疗咨询系统成为破解行业痛点的关键。 系统采用前后端分离架构,以 Spring Boot 为后端核心框架,整合 Spring Security 与 JWT 令牌认证实现分级权限控制,通过 MyBatis-Plus 优化数据交互;前端基于 Vue3+ElementPlus 开发,适配不同用户群体操作需求。功能上覆盖患者、医生、管理员三类角色:患者可通过手机号或邮箱注册登录,享受在线问诊、预约挂号、健康档案管理、AI 智能客服咨询等服务;医生依托医院认证账号接入,完成接诊回复、病例管理、健康档案查阅等操作;管理员实现用户与医生信息管控、预约管理、公告发布及系统维护,同时引入第三方 AI 智能客服提供 24 小时基础咨询。 该系统的应用有效打破了传统就医的时空限制,让患者足不出户即可获取专业医疗建议,大幅降低就医成本;简化了医生接诊流程,通过数字化健康档案提升诊断准确性与效率;帮助医疗机构优化资源配置,分流门诊压力,推动优质医疗资源下沉。经实践验证,系统操作便捷、运行稳定,数据安全有充分保障,切实解决了健康数据分散管理、医疗服务响应不及时等问题,为医患双方提供了高效便捷的沟通渠道,为推动医疗服务均等化、落实健康中国战略提供了切实可行的技术支撑。 关键词:Spring Boot;Vue3;在线医疗咨询系统;在线问诊;预约挂号;健康档案管理;AI 智能客服;病例管
评论 3
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值