Homepage: Dashboard personalizable para centralizar accesos rápidos a servicios
Homepage es un panel de control personalizable para centralizar accesos y métricas de servicios, ideal como página de inicio en servidores autogestionados.
Características
- Panel limpio y modular.
- Integración con Docker a través del socket-proxy, sin exponer el
docker.sock. - Widgets para clima, sistema, uptime, contenedores y accesos rápidos.
- Configuración íntegra mediante archivos YAML.
Requisitos previos
- Carpeta local para
/configy/icons. - Red propia para Homepage.
- Unión opcional a la red SocketProxy_NET para la integración con Docker.
Implementación
El compose se mantiene directamente en Gitea:
Notas relevantes de la configuración actual:
- Escucha en el puerto 4100.
HOMEPAGE_ALLOWED_HOSTScontrola desde qué IP puede cargarse el panel.- No se monta el socket de Docker. La integración se hace únicamente mediante la red compartida con el socket-proxy.
- Homepage entra en
SocketProxy_NETsolo si se quiere mostrar contenedores. - DNS fijado a servidores externos para evitar saturar el DNS local.
TZy rutas limpias para/configy/icons.
Archivos de configuración (/config)
La estructura sigue igual, pero con ajustes de orden y limpieza respecto a versiones anteriores:
bookmarks.yaml: accesos rápidos.services.yaml: definición de servicios visibles.docker.yaml: integración con el socket-proxy.widgets.yaml: clima, uptime, sistema, etc.settings.yaml: ajustes globales y personalización.
Nota sobre docker.yaml
En caso de integrar Homepage con el socket-proxy, la configuración mínima queda así:
---
# For configuration options and examples, please see:
# https://gethomepage.dev/en/configs/docker/
Docker:
host: socket-proxy
port: 2375
# my-docker:
# socket: /var/run/docker.sock
Esto evita montar el docker.sock y delega toda la comunicación al proxy.
Errores comunes o decisiones importantes
- Nada de montar el
docker.sock. Toda la integración pasa por la red compartida con el proxy. HOMEPAGE_ALLOWED_HOSTSes obligatorio; si no coincide, Homepage rechaza el acceso.- Cualquier cambio de red implica recrear los contenedores; sin eso no resuelven servicios.
- Cuando Homepage no detecta contenedores, casi siempre es que no está en la red del socket-proxy.
Resumen breve
- Servicio en el puerto 4100, con red propia.
- Integración Docker solo vía SocketProxy_NET.
- Configuración completa en
/config. - Compose y cambios siempre actualizados en Gitea.