51 lines
2.1 KiB
YAML
51 lines
2.1 KiB
YAML
services:
|
||
homepage:
|
||
image: ghcr.io/gethomepage/homepage:latest
|
||
container_name: homepage
|
||
restart: unless-stopped
|
||
volumes:
|
||
- ./config:/app/config
|
||
- /var/run/docker.sock:/var/run/docker.sock:ro
|
||
ports:
|
||
- "3003:3000"
|
||
environment:
|
||
- HOMEPAGE_ALLOWED_HOSTS=home.xiteng.site,xiteng.site
|
||
labels:
|
||
# --- 1. Traefik 路由设置 ---
|
||
- "traefik.enable=true"
|
||
- "traefik.http.routers.homepage.rule=Host(`home.xiteng.site`)"
|
||
- "traefik.http.services.homepage.loadbalancer.server.port=3000"
|
||
- "traefik.http.routers.homepage.entrypoints=websecure"
|
||
# --- 根域名 xiteng.site ---
|
||
- "traefik.http.routers.homepage-root.rule=Host(`xiteng.site`)"
|
||
- "traefik.http.routers.homepage-root.service=homepage"
|
||
- "traefik.http.routers.homepage-root.entrypoints=websecure"
|
||
# --- HTTP 入口(来自 cloudflared tunnel)---
|
||
- "traefik.http.routers.homepage-root-http.rule=Host(`xiteng.site`)"
|
||
- "traefik.http.routers.homepage-root-http.service=homepage"
|
||
- "traefik.http.routers.homepage-root-http.entrypoints=web"
|
||
- "traefik.http.routers.homepage-root.tls=true"
|
||
- "traefik.http.routers.homepage-root.tls.certresolver=cfresolver"
|
||
# --- 新增:开启 TLS 并指定解析器 ---
|
||
- "traefik.http.routers.homepage.tls=true"
|
||
- "traefik.http.routers.homepage.tls.certresolver=cfresolver"
|
||
# --- 3. Homepage 自动发现设置 ---
|
||
- "homepage.group=我的服务"
|
||
- "homepage.name=HomePage"
|
||
- "homepage.icon=homepage"
|
||
- "homepage.href=https://home.xiteng.site"
|
||
- "homepage.description=导航主页"
|
||
# --- 4. AutoKuma 自动发现设置 ---
|
||
# 格式: kuma.<自定义ID>.<监控类型>.<属性>
|
||
- "kuma.homepage.http.name=HomePage" # 监控项名称
|
||
- "kuma.homepage.http.url=http://homepage:3000" # 内网直连
|
||
# (可选) 每 60 秒检查一次,重试 3 次
|
||
- "kuma.homepage.http.interval=60"
|
||
- "kuma.homepage.http.max_retries=3"
|
||
networks:
|
||
- homelab_net
|
||
|
||
networks:
|
||
homelab_net:
|
||
external: true
|