
b4bz/homerHomer 是一个极简的静态服务器主页工具,旨在通过简单的 YAML 配置文件,帮助用户集中管理和快速访问服务器上的各类服务。它生成纯静态的 HTML/JS 页面,无需后端依赖,可直接部署在 HTTP 服务器上,适合作为个人或团队的服务导航门户。
config.yml 文件定义服务、分组和页面样式,配置简单直观。/:激活搜索框;Escape:退出搜索;Enter:打开首个匹配结果(遵循服务配置的 _target 属性);Alt/Option + Enter:在新标签页打开首个匹配结果。通过 docker run 命令直接启动容器,映射本地目录存储配置和资源文件:
shdocker run -d \ -p 8080:8080 \ # 端口映射(主机端口:容器端口) -v /your/local/assets:/www/assets \ # 挂载本地assets目录(存放配置和静态资源) -e INIT_ASSETS=1 \ # 可选:是否安装示例配置和资源(默认1,首次使用建议保留) -e SUBFOLDER=null \ # 可选:若部署在子路径(如[***] --restart=always \ # 容器退出后自动重启 b4bz/homer:latest
说明:
INIT_ASSETS=1 会自动在挂载的 /your/local/assets 目录下生成示例配置文件(config.yml.dist)和静态资源(如图标),需手动将 config.yml.dist 重命名为 config.yml 并修改配置。-p 参数调整主机映射端口。创建 docker-compose.yml 文件,自定义端口和卷挂载配置:
yamlversion: '3' services: homer: image: b4bz/homer:latest container_name: homer restart: always ports: - "8080:8080" # 主机端口:容器端口 volumes: - /your/local/assets:/www/assets # 本地assets目录挂载 environment: - INIT_ASSETS=1 # 安装示例配置和资源 - SUBFOLDER=null # 子路径配置(如无需子路径保持null)
启动容器:
shcd /path/to/docker-compose.yml docker-compose up -d
下载官方预构建包,解压后直接部署到 HTTP 服务器(如 Nginx、Apache):
shwget [***] unzip homer.zip cd homer cp assets/config.yml.dist assets/config.yml # 复制示例配置 # 部署/dist目录到HTTP服务器
从源码构建:
sh# 使用yarn(推荐) yarn install yarn build # 或使用npm npm install npm run build # 构建产物位于/dist目录,部署到HTTP服务器
| 环境变量名 | 默认值 | 说明 |
|---|---|---|
INIT_ASSETS | 1 | 首次启动时是否安装示例配置文件(config.yml.dist)和静态资源(如图标)。设置为 0 则不安装。 |
SUBFOLDER | null | 若需部署在子路径(如 [***]),需设置为子路径值(如 /homer)。 |
config.yml)配置文件位于挂载的 assets 目录下(/your/local/assets/config.yml),基于 YAML 格式,用于定义服务、分组、页面标题、主题等。首次使用需将 config.yml.dist 重命名为 config.yml 并修改内容。
基本结构示例:
yamltitle: "我的服务门户" subtitle: "服务器服务导航" logo: "assets/logo.png" # 页面logo路径(相对于assets目录) services: - name: "工具类" # 分组名称 icon: "fas fa-wrench" # 分组图标(使用Font Awesome图标) items: - name: "WebSSH" # 服务名称 logo: "assets/tools/webssh.png" # 服务图标 url: "[***]" # 服务URL description: "网页终端工具" # 服务描述
详细配置项可参考 官方配置文档。
file:// 协议打开 dist/index.html。assets 目录时,需确保容器对该目录有读写权限,避免配置文件无法修改或保存。fas fa-server)或自定义图片(放置在 assets 目录下并指定路径)。manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务