先看效果图
安装
- docker安装镜像
docker pull ghcr.io/benphelps/homepage:latest
- 创建对应挂载文件夹
mkdir -p /docker/homepage/config
mkdir -p /docker/homepage/icons
mkdir -p /docker/homepage/images
- 运行容器
docker run -d --name homepage \
-p 3000:3000 \
-v /docker/homepage/config:/app/config \
-v /docker/homepage/icons:/app/public/icons \
-v /docker/homepage/images:/app/public/images \
ghcr.io/benphelps/homepage:latest
- 输入网址
localhost:3000
即可进入导航页
配置
主页使用 YAML 进行配置,YAML 代表“YAML Ain't Markup Language”。它是一种人类可读的数据序列化格式,是 JSON 的超集。非常适合配置文件,易于读写。支持复杂的数据类型,如列表和对象。缩进很重要。
Settings
该文件允许您定义应用程序级选项。要使对此文件所做的更改生效,您需要重新生成静态 HTML,这可以通过单击页面右下角的刷新图标来完成。
settings.yaml
标题
title: My Awesome Homepage
起始网址
您可以根据需要自定义可安装应用程序的start_url。默认值为“/”。
startUrl: https://custom.url
背景图片
添加新映像时,都需要重新启动容器,这是Next.js静态站点服务器的限制。
不要创建到整个目录的绑定挂载。
/app/public/
如果您想使用背景图片而不是纯色主题色,您可以提供所选图片的完整网址。
background: https://images.unsplash.com/photo-1502790671504-542ad42d5189?auto=format&fit=crop&w=2560&q=80
或者,您可以将路径传递给相对于本地图像的路径,例如 目录。/app/public/images
例如,在 Docker Compose 文件中,挂载到映像保存位置的路径:
volumes:
- /my/homepage/images:/app/public/images
然后引用该图像:
background: /images/background.png
背景不透明度和滤镜
您可以指定要应用于背景图像的滤镜,以实现模糊、饱和度和亮度以及与背景颜色混合的不透明度。前三个过滤器设置使用顺风 CSS 类,请参阅下面的注释,了解每个类的选项。您不需要指定所有选项。
background:
image: /images/background.png
blur: sm # sm, "", md, xl... see https://tailwindcss.com/docs/backdrop-blur
saturate: 50 # 0, 50, 100... see https://tailwindcss.com/docs/backdrop-saturate
brightness: 50 # 0, 50, 75... see https://tailwindcss.com/docs/backdrop-brightness
opacity: 50 # 0-100
卡片背景模糊
您可以将模糊滤镜应用于服务和书签卡。请注意,此选项与背景模糊、饱和度和亮度滤镜不兼容。
cardBlur: sm # sm, "", md, etc... see https://tailwindcss.com/docs/backdrop-blur
网站图标
如果您想使用自定义网站图标而不是随附的网站图标,您可以提供所选图像的完整 URL。
favicon: https://www.google.com/favicon.ico
或者,您可以将路径传递到相对于目录的本地映像。
主题
您可以通过传递选项来配置固定主题(并禁用主题切换器),如下所示:theme
theme: dark # or light
调色板
您可以通过传递该选项来配置固定调色板(并禁用调色板切换器),如下所示:color
color: slate
支持的颜色有:slategray zincneutral stoneamber yellowlime greenemerald tealcyan skyblue indigoviolet purplefuchsia pinkrose redwhite
布局
您可以将服务和书签部分配置为基于“列”或“行”的布局,如下所示:
假设您在 or 文件中有一个名为 or 的组,Mediaservices.yaml bookmarks.yaml
layout:
Media:
style: row
columns: 4
例如,这将生成以下布局:
标题样式
目前有 4 个标题样式选项,您可以在下面看到每个选项。
headerStyle: underlined # default style
headerStyle: boxed
headerStyle: clean
headerStyle: boxedWidgets
基本URL
在某些代理配置中,可能需要设置文档基 URL。您可以通过提供值来执行此操作,如下所示:base
base: http://host.local/homepage
该 URL 必须是完整的绝对 URL,否则浏览器将忽略它。
语言
使用以下命令设置所需的语言:
language: fr
目前支持的语言:ca、de、en、es、fr、he、hr、胡、it、nb-NO、nl、pt、ru、sv、vi、zh-CN、zh-Hant
您还可以指定区域设置,例如 DateTime 小部件,例如 en-AU、en-GB 等。
链接目标
更改主页上链接的行为,
target: _blank # Possible options include _blank, _self, and _top
用于在新选项卡中打开链接、在同一选项卡中打开链接以及在新窗口中打开链接。_blank_self``_top
也可以为单个服务设置此值。请注意,在服务级别设置此项会覆盖settings.json中的任何设置,例如:
- Example Service:
href: https://example.com/
...
target: _self
供应商
该部分允许您定义共享 API 提供程序选项和密钥。目前,这允许您秘密定义天气 API 密钥,也是 Longhorn URL 和凭据的位置。providers
providers:
openweathermap: openweathermapapikey
weatherapi: weatherapiapikey
longhorn:
url: https://longhorn.example.com
username: admin
password: LonghornPassword
然后,您可以传递而不是在小部件配置中传递。providerapiKey
- weatherapi:
latitude: 50.449684
longitude: 30.525026
provider: weatherapi
快速启动
您可以使用“快速启动”功能来搜索服务、执行 Web 搜索或打开 URL。要使用“快速启动”,只需在主页上开始输入(只要搜索小部件没有焦点)。
快速启动功能有一些可选设置:
searchDescriptions
:用于控制搜索中是否包含项目描述。默认情况下,这是 false。启用后,与项目名称匹配的结果将放置在仅与描述匹配的结果之上。hideInternetSearch
:禁用自动包含当前选择的 Web 搜索(例如从小部件)作为快速启动选项。默认情况下,这是 false,启用该功能。showSearchSuggestions
:显示 Internet 搜索的搜索建议。如果未指定此设置,则该设置将从搜索小部件继承。如果此处也未指定,则默认为 false。对于自定义提供程序,需要进行设置才能使其正常工作。suggestionUrl
provider
:搜索引擎提供商。如果未指定任何内容,它将尝试使用为搜索小部件设置的提供程序,如果两者都不存在,则将禁用 Internet 搜索。hideVisitURL
:禁用检测并提供打开 URL 的选项。默认情况下,这是 false,启用该功能。
quicklaunch:
searchDescriptions: true
hideInternetSearch: true
showSearchSuggestions: true
hideVisitURL: true
provider: google # google, duckduckgo, bing, baidu, brave or custom
或自定义搜索:
quicklaunch:
provider: custom
url: https://www.ecosia.org/search?q=
target: _blank
suggestionUrl: https://ac.ecosia.org/autocomplete?type=list&q=
主页版本
默认情况下,发布版本显示在页面底部。要隐藏它,请使用设置,如下所示:hideVersion
hideVersion: true
日志路径
默认情况下,主页日志文件将写入文件夹的子目录。要自定义此路径,您可以设置设置。将在写入日志文件的位置创建一个文件夹。logsconfi logpathlogs
logpath: /logfile/path
默认情况下,日志会发送到指定路径的文件和发送到文件。这可以通过将环境变量设置为(默认值)之一或 来更改。stdout LOG_TARGETS both stdoutfile
显示Docker统计信息
您可以显示所有 docker 统计信息展开:settings.yaml
showStats: true
或按服务 () 使用:services.yaml
- Example Service:
...
showStats: true
如果两者都设置了,则按服务设置优先。
状态样式
您可以从以下样式中进行选择,用于 docker 或 k8s 状态、站点监视器和 ping: 或 dotbasic
- 默认值为 no 值,显示 monitor 和 ping 响应时间(以 ms 为单位)以及 docker / k8s 容器状态
dot
显示一个绿点,表示监视器 ping 成功或运行状况良好。basic
显示监视器和 ping 的 UP 或 DOWN
例如:
statusStyle: "dot"
或按每个服务()使用:services.yaml
- Example Service:
...
statusStyle: 'dot'
如果同时设置了这两个设置,则每个服务的设置优先。
实例名称
自动 docker 服务发现用于区分多个主页实例的名称。
例如:
instanceName: public
隐藏小组件错误信息
全局隐藏可见的 API 错误消息:settings.yaml
hideErrors: true
或每个服务小部件 () 与:services.yaml
- Example Service:
...
widget:
...
hideErrors: true
如果任一值设置为 true,则错误消息将被隐藏。
书签
书签在文件中配置。它们在组和列表的工作方式上与服务大致相同。它们只是更简单、更小,除了作为链接之外不包含任何额外功能。bookmarks.yaml
主页的设计预计是 2 个字母,但不强制。abbr
您还可以将图标用于书签,类似于服务器图标的选项。如果同时提供图标和缩写,则图标优先。
默认情况下,描述将使用链接的主机名,但您可以使用自定义描述覆盖它。
---
- Developer:
- Github:
- abbr: GH
href: https://github.com/
- Social:
- Reddit:
- icon: reddit.png
href: https://reddit.com/
description: The front page of the internet
- Entertainment:
- YouTube:
- abbr: YT
href: https://youtube.com/
呈现为(取决于您的主题等):
默认的 bookmarks.yaml
是一个工作示例。
服务
服务在文件内配置。您可以拥有任意数量的组,并且每个组可以拥有任意数量的服务。services.yaml
组
组被定义为顶级数组条目。
- Group A:
- Service A:
href: http://localhost/
- Group B:
- Service B:
href: http://localhost/
服务
服务被定义为组上的数组条目,
- Group A:
- Service A:
href: http://localhost/
- Service B:
href: http://localhost/
- Service C:
href: http://localhost/
- Group B:
- Service D:
href: http://localhost/
描述
服务可能有描述,
- Group A:
- Service A:
href: http://localhost/
description: This is my service
- Group B:
- Service B:
href: http://localhost/
description: This is another service
图标
服务可能附加了一个图标,您可以通过传递图标的名称、带或不带或带来自动使用仪表板图标中的图标以使用 svg 版本。.png.svg
您还可以从 Material Design Icons with 或 Simple Icons with 中指定前缀图标。mdi-XXsi-XX
您可以通过添加十六进制颜色代码作为后缀来指定自定义颜色,例如 或。mdi-XX-#f0d453si-XX-#a712a2
要使用远程图标,请使用绝对 URL(例如 )。https://...
若要使用本地图标,请先创建 Docker 挂载,然后将图标引用为 。添加新图标时,需要重新启动容器。/app/public/icons/icons/myicon.png
- Group A:
- Sonarr:
icon: sonarr.png
href: http://sonarr.host/
description: Series management
- Group B:
- Radarr:
icon: radarr.png
href: http://radarr.host/
description: Movie management
- Group C:
- Service:
icon: mdi-flask-outline
href: http://service.host/
description: My cool service
Ping
服务可能具有一个可选属性,允许您监视外部主机的可用性。从 v0.8.0 开始,ping 功能将尝试在底层主机上使用 true (ICMP) ping 命令。目前仅支持 IPv4。ping
- Group A:
- Sonarr:
icon: sonarr.png
href: http://sonarr.host/
ping: sonarr.host
- Group B:
- Radarr:
icon: radarr.png
href: http://radarr.host/
ping: some.other.host
还可以使用属性将不同的样式应用于 ping 指示器,请参阅设置。statusStyle
站点监视器
服务可能具有可选属性(以前称为 ),该属性允许您监视所选 URL 的可用性并显示响应时间。您无需将监视器 URL 设置为等于 href 或 ping URL。siteMonitorping
站点监视器功能的工作原理是向 URL 发出 http 请求,并在失败时回退到。例如,如果 URL 需要身份验证或落后于 Authelia,则它不会登录。在反向代理和/或身份验证的情况下,这通常需要使用“内部”URL 来使站点监视器功能正确显示状态。
HEADGET
- Group A:
- Sonarr:
icon: sonarr.png
href: http://sonarr.host/
siteMonitor: http://sonarr.host/
- Group B:
- Radarr:
icon: radarr.png
href: http://radarr.host/
siteMonitor: http://some.other.host/
还可以使用属性将不同的样式应用于站点监视器指示器,请参阅设置。statusStyle
Docker集成
服务可以连接到 Docker 容器,可以在本地计算机上运行,也可以在远程计算机上运行。
- Group A:
- Service A:
href: http://localhost/
description: This is my service
server: my-server
container: my-container
- Group B:
- Service B:
href: http://localhost/
description: This is another service
server: other-server
container: other-container
单击启用了 Docker 集成的服务的状态标签将展开容器统计信息,您可以在其中查看 CPU、内存和网络活动。
这也可以通过以下方式进行控制。有关详细信息,请参阅 show docker stats
showStats
服务集成
服务也可能附加了一个服务小部件(或集成),这独立于 Docker 集成工作。
您可以在 Widgets 页面上找到每个受支持集成的信息和配置。
以下是Radarr和Sonarr服务的示例,以及它们各自的集成。
- Group A:
- Sonarr:
icon: sonarr.png
href: http://sonarr.host/
description: Series management
widget:
type: sonarr
url: http://sonarr.host
key: apikeyapikeyapikeyapikeyapikey
- Group B:
- Radarr:
icon: radarr.png
href: http://radarr.host/
description: Movie management
widget:
type: radarr
url: http://radarr.host
key: apikeyapikeyapikeyapikeyapikey
服务小组件
除非另有说明,否则 URL 不应以 API 路径或其他 API 路径结尾。每个小部件都将自行处理路径。/
每个服务都可以附加一个小部件(通常与服务类型匹配,但这不是强制的)。
除了服务的 href 之外,还可以指定要在其中打开该链接的目标位置。有关详细信息,请参阅链接目标。
以 Emby 为例,这就是附加 Emby 服务小部件的方式。
- Emby:
icon: emby.png
href: http://emby.host.or.ip/
description: Movies & TV Shows
widget:
type: emby
url: http://emby.host.or.ip
key: apikeyapikeyapikeyapikeyapikey
现场可见性
每个小组件都可以选择通过小组件属性提供哪些字段应该可见的列表。如果未指定任何字段,则将显示所有字段。该属性必须是有效的字符串 YAML 数组。例如,以下是 Sonarr 的条目,仅显示几个字段。fieldsfields
在所有情况下,小部件都可以工作并显示所有字段,而无需指定 fields
属性。
- Sonarr:
icon: sonarr.png
href: http://sonarr.host.or.ip
widget:
type: sonarr
fields: ["wanted", "queued"]
url: http://sonarr.host.or.ip
key: apikeyapikeyapikeyapikeyapikey
Docker
Docker 实例在文件中配置。支持 IP:PORT 和 Socket 连接。docker.yaml
对于 IP:PORT,只需确保您的 Docker 实例已配置为接受通过 HTTP API 的 API 流量。
my-remote-docker:
host: 192.168.0.101
port: 2375
使用 Docker TLS
由于 Docker 支持使用 TLS 和客户端证书身份验证进行连接,因此您可以在连接到 HTTP API 时包含 TLS 详细信息。有关设置 Docker 以接受 TLS 连接以及生成密钥和证书的更多详细信息,请参阅 Docker 文档。文件条目相对于目录(文件的位置)而言。configdocker.yaml
my-remote-docker:
host: 192.168.0.101
port: 275
tls:
keyFile: tls/key.pem
caFile: tls/ca.pem
certFile: tls/cert.pem
使用 Docker 套接字代理
出于直接公开 docker 套接字的安全考虑,您可以使用docker-socket-proxy容器在更受限制且更安全的 API 上公开 docker 套接字。
下面是一个示例 docker-compose 文件,它将公开 docker 套接字,然后从主页容器连接到它:
dockerproxy:
image: ghcr.io/tecnativa/docker-socket-proxy:latest
container_name: dockerproxy
environment:
- CONTAINERS=1 # Allow access to viewing containers
- SERVICES=1 # Allow access to viewing services (necessary when using Docker Swarm)
- TASKS=1 # Allow access to viewing tasks (necessary when using Docker Swarm)
- POST=0 # Disallow any POST operations (effectively read-only)
ports:
- 127.0.0.1:2375:2375
volumes:
- /var/run/docker.sock:/var/run/docker.sock:ro # Mounted as read-only
restart: unless-stopped
homepage:
image: ghcr.io/gethomepage/homepage:latest
container_name: homepage
volumes:
- /path/to/config:/app/config
ports:
- 3000:3000
restart: unless-stopped
然后,在设置文件中,您可以像这样配置 docker 实例:docker.yaml
my-docker:
host: dockerproxy
port: 2375
直接使用 Socket
如果希望直接使用套接字,请首先确保将本地套接字传递到 Docker 容器中。
为了直接使用套接字,主页必须以 root 身份运行
homepage:
image: ghcr.io/gethomepage/homepage:latest
container_name: homepage
volumes:
- /path/to/config:/app/config
- /var/run/docker.sock:/var/run/docker.sock # pass local proxy
ports:
- 3000:3000
restart: unless-stopped
如果您使用的是 ,这将是 。docker run-v /var/run/docker.sock:/var/run/docker.sock
然后,在设置文件中,您可以像这样配置 docker 实例:docker.yaml
my-docker:
socket: /var/run/docker.sock
服务业
配置 docker 实例后,可以将它们应用于服务,以显示统计信息和状态报告。
在服务内部,您要连接到 docker:
- Emby:
icon: emby.png
href: "http://emby.home/"
description: Media server
server: my-docker # The docker server that was configured
container: emby # The name of the container you'd like to connect
自动服务发现
主页具有附加适当标签的容器的自动服务发现功能,所有配置选项都可以使用点表示法应用,以 开头。homepage
下面是上面显示的相同服务条目的示例,作为 docker 标签。
services:
emby:
image: lscr.io/linuxserver/emby:latest
container_name: emby
ports:
- 8096:8096
restart: unless-stopped
labels:
- homepage.group=Media
- homepage.name=Emby
- homepage.icon=emby.png
- homepage.href=http://emby.home/
- homepage.description=Media server
正确配置 Docker 实例后,将自动发现此服务并将其添加到您的主页。您不需要指定 服务器
或 容器
值,因为它们将自动推断。
使用 docker swarm 时,请使用 deploy/labels
部件
您还可以使用点表示法配置小部件以及标准服务条目。
labels:
- homepage.group=Media
- homepage.name=Emby
- homepage.icon=emby.png
- homepage.href=http://emby.home/
- homepage.description=Media server
- homepage.widget.type=emby
- homepage.widget.url=http://emby.home
- homepage.widget.key=yourembyapikeyhere
- homepage.widget.fields=["field1","field2"] # optional
您可以使用数组样式的点表示法为 CustomAPI 小部件添加指定字段:
labels:
- homepage.group=Media
- homepage.name=Emby
- homepage.icon=emby.png
- homepage.href=http://emby.home/
- homepage.description=Media server
- homepage.widget.type=customapi
- homepage.widget.url=http://argus.service/api/v1/service/summary/emby
- homepage.widget.mappings[0].label=Deployed Version
- homepage.widget.mappings[0].field.status=deployed_version
- homepage.widget.mappings[1].label=Latest Version
- homepage.widget.mappings[1].field.status=latest_version
Docker Swarm
支持 Docker swarm,并使用相同的表示法指定 Docker 服务。要启用 swarm 支持,您需要在 docker.yaml 中包含一个设置,例如 servercontainer``swarm
my-docker:
socket: /var/run/docker.sock
swarm: true
要使自动服务发现发现所有服务,主页应部署在管理器节点上,这一点很重要。在堆栈 yaml 配置中将部署要求设置为主节点,例如
....
deploy:
placement:
constraints:
- node.role == manager
...
为了检测 Docker 群中的每个服务,必须使用服务标签而不是容器标签。将主页标签指定为:
....
deploy:
labels:
- homepage.icon=foobar
...
多个主页实例
可以在 settings.md 中配置可选字段,以区分多个主页实例。instanceName
若要将标签限制为实例,请在前缀后插入。.instance.{{instanceName}}homepage
labels:
- homepage.group=Media
- homepage.name=Emby
- homepage.icon=emby.png
- homepage.instance.internal.href=http://emby.lan/
- homepage.instance.public.href=https://emby.mydomain.com/
- homepage.description=Media server
订购
从 v0.6.4 开始,发现的服务可以包含一个可选字段来确定排序,以便:weight
- 发现的服务的默认权重为 0
- 已配置服务的默认权重是其组内按 100 缩放的索引,即 (index + 1) * 100
- 如果两个项目具有相同的权重值,则将按名称对它们进行排序
显示统计数据
您可以通过单击状态指示器来显示 docker 统计信息,但也可以通过以下方式按服务进行控制:
- Example Service:
...
showStats: true
另请参阅显示docker统计信息的设置。
自定义CSS和JS
从 v0.6.30 版本开始,主页支持添加您自己的自定义 css 和 javascript。请自行承担风险。
要添加自定义 css,只需编辑 config 目录下的文件,同样对于 javascript,您将编辑 .然后,您可以使用各种类/ID 定位主页中的元素,以根据自己的喜好自定义内容。custom.csscustom.js
您还可以使用自定义 css 或 javascript 为服务或书签设置特定目标,例如 id
Service:
id: myserviceid
icon: icon.png
...
参考(自用)
servers.yaml
---
# For configuration options and examples, please see:
# https://gethomepage.dev/latest/configs/services
- 测速:
- 互联网:
href: https://www.speedtest.cn/
description: 本机与互联网测速
- 家:
href: https://www.zhangqihao.cn:3002
description: 本机与家中网络测速
ping: https://www.zhangqihao.cn:3002
- 机房:
href: https://server.zhangqihao.cn:3002
description: 本机与机房网络测试
ping: https://server.zhangqihao.cn:3002
- NAS:
- DS423+ DSM:
icon: /icons/dsm.PNG
href: http://nas.zhangqihao.cn
description: 群晖DS423+ DSM管理页面
ping: https://www.zhangqihao.cn:5001
# widget:
# type: diskstation
# url: https://www.zhangqihao.cn:5001
# username: liuxinyu
# password: Liu20011110@
- DS918+ DSM:
icon: /icons/dsm.PNG
href: https://www.liuxinyu.love:5001/
description: 群晖DS918+ DSM管理页面
ping: https://www.liuxinyu.love:5001/
# widget:
# type: diskstation
# url: https://www.liuxinyu.love:5001
# username: zhangqihao
# password: Zqh20020111@
- TrueNAS:
icon: /icons/truenasscale.png
href: https://server.zhangqihao.cn:10443/
description: TrueNAS
ping: https://server.zhangqihao.cn:10443/
widget:
type: truenas
url: https://server.zhangqihao.cn:10443
# username: zhangqihao # not required if using api key
# password: Zqh20020111@ # not required if using api key
key: 1-LaFPFARNZJyKSVkc3IzdjogmaeiKOtHI4OwlxtroDNcEqxOymqQBn4fQZ2gyYJqs # not required if using username / password
- 应用:
- Synology Drive:
icon: /icons/drive.PNG
href: http://nas.zhangqihao.cn/drive
description: 群晖Drive应用
- Synology Photo:
icon: /icons/photos.PNG
href: http://nas.zhangqihao.cn/photo
description: 群晖Photo应用
- Synology Chat:
icon: /icons/chat.PNG
href: http://nas.zhangqihao.cn/chat
description: 群晖Chat应用
- Virtual Machine Manager:
icon: /icons/virtualmachinemanager.PNG
href: http://nas.zhangqihao.cn/vmm
description: 群晖虚拟机应用
- Video Station:
icon: /icons/video.PNG
href: http://nas.zhangqihao.cn/video
description: 群晖Video Station应用
- Surveillance Station:
icon: /icons/surveillancestation.PNG
href: http://nas.zhangqihao.cn/cam
description: 群晖监控应用
- Note Station:
icon: /icons/note.PNG
href: http://nas.zhangqihao.cn/note
description: 群晖Note Station应用
- Synology MailPlus:
icon: /icons/mailstation.PNG
href: http://nas.zhangqihao.cn/mail
description: 群晖MailPlus应用
- 原导航页:
icon: /icons/favicon.jpg
href: https://www.zhangqihao.cn:8081
description: 原服务导航页
ping: https://www.zhangqihao.cn:8081
- 资源文件服务器:
icon: /icons/nginx.png
href: http://files.zhangqihao.cn
description: Nginx静态文件服务器
ping: https://files.zhangqihao.cn
- VoceChat:
icon: /icons/vocechat.PNG
href: https://vocechat.zhangqihao.cn
description: VoceChat聊天服务器
ping: https://vocechat.zhangqihao.cn
- EMQX Dashboard:
icon: /icons/emqx.png
href: https://server.zhangqihao.cn:18083
description: EMQX mqtt服务器
ping: https://server.zhangqihao.cn:18083
- 文件快递柜:
icon: /icons/fengchao.png
href: http://www.liuxinyu.love:12345
description: 文件快递柜,文件分享
ping: http://www.liuxinyu.love:12345
- Home Assistant:
icon: /icons/ha.png
href: http://www.zhangqihao.cn:8123
description: Home Assistant
ping: http://www.zhangqihao.cn:8123
- MCSManager:
icon: /icons/mc.png
href: https://console.mc.zhangqihao.cn
description: MCSManager我的世界面板
ping: https://console.mc.zhangqihao.cn
- ChatGPT:
icon: /icons/chatgpt.png
href: https://chat.zhangqihao.cn
description: ChatGPT
ping: https://chat.zhangqihao.cn
- 张启昊博客站:
icon: https://files.zhangqihao.cn/image/icon/halo.jpg
href: https://blog.zhangqihao.cn
description: 张启昊的博客站
ping: https://blog.zhangqihao.cn
- NextCloud:
icon: /icons/nextcloud.png
href: https://server.zhangqihao.cn:9001
description: NextCloud文件服务器
ping: https://server.zhangqihao.cn:9001
widget:
type: nextcloud
url: https://server.zhangqihao.cn:9001
username: zhangqihao
password: Zqh20020111@
- AdGuard Home:
icon: /icons/adguard.png
href: http://8.130.44.93:3000/
description: AdGuard Home DNS解析
ping: http://8.130.44.93:3000/
widget:
type: adguard
url: http://8.130.44.93:3000
username: zqh
password: Zqh20020111@
- Jellyfin:
icon: /icons/jellyfin.png
href: https://www.zhangqihao.cn:8095
description: Jellyfin影视服务器
ping: https://www.zhangqihao.cn:8095
widget:
type: jellyfin
url: https://www.zhangqihao.cn:8095
key: b9ddbbdf86e64f8daa0aef18d3ab92d6
enableBlocks: true # optional, defaults to false
enableNowPlaying: true # optional, defaults to true
# - 云:
# - 阿里云:
# icon: /icons/aliyun.png
# href: https://www.aliyun.com
# description: 阿里云
# - DNSPod:
# icon: /icons/dnspod.png
# href: https://console.dnspod.cn
# description: 腾讯DNSPod
# - 贝锐蒲公英:
# icon: /icons/pgy.png
# href: https://console.sdwan.oray.com/zh/main
# description: 贝锐蒲公英管理页面
- 路由器:
- 家:
icon: /icons/asus.png
href: https://zqh-home.asuscomm.cn:8443
description: TUF GAMING小旋风
ping: https://zqh-home.asuscomm.cn:8443
- 机房:
icon: /icons/asus.png
href: https://zqh-server.asuscomm.cn:8443
description: AX57U
ping: https://zqh-server.asuscomm.cn:8443
- OpenWrt:
icon: /icons/openwrt2.png
href: https://server.zhangqihao.cn:480
description: OpenWrt
ping: https://server.zhangqihao.cn:480
- Nginx Proxy Manager:
icon: /icons/nginx_proxy_manager.png
href: http://101.133.235.141:81/
description: Nginx Proxy Manager 国内
ping: http://101.133.235.141:81/
- Nginx Proxy Manager:
icon: /icons/nginx_proxy_manager.png
href: http://8.219.54.160:81/
description: Nginx Proxy Manager 新加坡
ping: http://8.219.54.160:81/
- X2ray:
href: http://vpn.zhangqihao.cn:54321/
description: X2ray
ping: http://vpn.zhangqihao.cn:54321/
- 内网书签:
- IDRAC:
icon: /icons/idrac.png
href: http://192.168.50.2
description: DELL IDRAC
- ESXI:
icon: /icons/vmware.png
href: https://192.168.50.3/ui/#/login
description: VMWARE ESXI8
bookmarks.yaml
---
# For configuration options and examples, please see:
# https://gethomepage.dev/latest/configs/bookmarks
- 云:
- 阿里云:
- icon: /icons/aliyun.png
href: https://console.aliyun.com
- 腾讯云:
- icon: /icons/dnspod.png
href: https://cloud.tencent.com/
- CloudFlare:
- icon: /icons/cloudflare.png
href: https://dash.cloudflare.com/
- Vultr:
- icon: /icons/vultr.png
href: https://my.vultr.com/
- 贝锐蒲公英:
- icon: /icons/pgy.png
href: https://console.sdwan.oray.com
- Cpolar:
- abbr: C
href: https://dashboard.cpolar.com/
- Vercel:
- abbr: ▲
href: https://vercel.com/
- 工具:
- 端口扫描:
- abbr: PORT
href: http://coolaf.com/tool/port
- 在线GET、POST:
- abbr: POST
href: http://coolaf.com/zh/tool/post
- iP地址查询:
- abbr: IP
href: https://www.ip138.com/
- 代码截图工具:
- abbr: PS
href: https://quanxin.org/code-snapshot
- Gofile文件分享工具:
- icon: /icons/gofile.png
href: https://gofile.cc/
- SVG转PNG:
- href: https://svgtopng.com/zh/
- 资源:
- KoolCenter:
- abbr: KC
href: https://www.koolcenter.com/
- Maven Repository:
- abbr: MVN
href: https://mvnrepository.com/
- 清华开源镜像站:
- abbr: MIRR
href: https://mirrors.tuna.tsinghua.edu.cn/
- 阿里巴巴开源镜像站:
- abbr: MIRR
href: https://developer.aliyun.com/mirror
- 网易开源镜像站:
- abbr: MIRR
href: http://mirrors.163.com/
- APKPure:
- abbr: APK
href: https://apkpure.com/
- icon素材网:
- abbr: ICON
href: http://icon.chrafz.com/
- HaiKei背景生成:
- abbr: BG
href: https://app.haikei.app/
- 谷歌字体:
- abbr: GG
href: https://fonts.google.com/
- 磁力猫:
- href: https://魔法猫咪.lol
- 开发:
- Github:
- abbr: GH
href: https://github.com/
- Gitee:
- abbr: GE
href: https://gitee.com/
- CSDN:
- abbr: CSDN
href: https://www.csdn.net/
- SoruceForce:
- abbr: SF
href: https://sourceforge.net/
- 恩山无线论坛:
- href: https://www.right.com.cn/
- 电影:
- The Movie Database:
- abbr: TMDB
href: https://www.themoviedb.org/
- 豆瓣电影:
- href: https://movie.douban.com/
- RARBG:
- href: https://rargb.to/
- 4KHDR世界:
- href: https://www.4khdr.cn/
- 6v电影网:
- href: http://www.6vgood.net/
- 不太灵影视:
- href: https://www.2bt0.com/
- 布谷TV:
- href: https://www.bugutv.org/
- SubHD:
- href: https://subhd.tv/
- RSSHub:
- href: https://docs-rsshub-app.tagtagworks.com/
# - Social:
# - Reddit:
# - abbr: RE
# href: https://reddit.com/
# - Entertainment:
# - YouTube:
# - abbr: YT
# href: https://youtube.com/
settings.yaml
---
# For configuration options and examples, please see:
# https://gethomepage.dev/en/configs/settings
language: zh-CN
logpath: /
background:
# image: https://images.unsplash.com/photo-1502790671504-542ad42d5189?auto=format&fit=crop&w=2560&q=80
# image: https://www.bing.com/th?id=OHR.WatSriSawai_ZH-CN7688908090_1920x1080.jpg&rf=LaDigue_1920x1080.jpg&pid=hp
# image: /images/bg1.jpg
image: https://server.zhangqihao.cn:13443/image/background/2efd73dc1t268ad05f139496be1a2d72.jpeg
# blur: sm # sm, "", md, xl... see https://tailwindcss.com/docs/backdrop-blur
# saturate: 50 # 0, 50, 100... see https://tailwindcss.com/docs/backdrop-saturate
# brightness: 50 # 0, 50, 75... see https://tailwindcss.com/docs/backdrop-brightness
opacity: 20 # 0-100
fiveColumns: true
hideVersion: true
title: 张启昊服务导航页
layout:
测速:
icon: /icons/speedtest.png
style: row
columns: 7
NAS:
icon: /icons/database.png
style: row
columns: 4
应用:
icon: /icons/internet.png
style: row
columns: 4
# 云:
# icon: /icons/onedrive.png
# style: row
# columns: 4
路由器:
icon: /icons/router.png
style: row
columns: 7
内网书签:
icon: /icons/local.png
style: row
columns: 4
widgets.yaml
---
# For configuration options and examples, please see:
# https://gethomepage.dev/latest/configs/widgets
- resources:
cpu: true
memory: true
disk: /
# - openmeteo
- weatherapi:
label: 苏州 # optional
latitude: 120.63132
longitude: 31.30227
timezone: Asia/Shanghai # optional
units: metric # or imperial
apiKey: e5e7a8a2d27745f6bb1162246232410
cache: 5 # Time in minutes to cache API responses, to stay within limits
- datetime:
text_size: xl
format:
timeStyle: short
dateStyle: long
hour12: true
- search:
provider: bing
focus: true
target: _blank