Files
Portainer/beszel

Beszel

Stack para desplegar Beszel en beszel.sherlockhomeless.net, con el hub publicado por Traefik y un agent local para monitorizar este mismo host Docker.

🚀 Despliegue con Docker Compose

Asegurate de tener beszel/.env configurado y despliega:

cd beszel
docker compose --env-file .env up -d

⚙️ Variables importantes

Edita beszel/.env:

BESZEL_DOMAIN=beszel.sherlockhomeless.net
BESZEL_APP_URL=https://beszel.sherlockhomeless.net
BESZEL_DATA_PATH=/opt/beszel/data
BESZEL_SOCKET_PATH=/opt/beszel/socket
BESZEL_AGENT_DATA_PATH=/opt/beszel/agent
BESZEL_AGENT_TOKEN=pega-aqui-tu-token
BESZEL_AGENT_KEY="ssh-ed25519 AAAA..."

📁 Preparación del host

Crea los directorios persistentes antes del primer arranque:

mkdir -p /opt/beszel/data /opt/beszel/socket /opt/beszel/agent

🔐 Autenticación y acceso

Beszel sí incluye autenticación propia, soporte multiusuario y OIDC, así que el router de Traefik no añade ths-authentik@docker por defecto para evitar doble login.

El acceso externo queda expuesto por HTTPS en https://beszel.sherlockhomeless.net, pero la autenticación se resuelve dentro del propio hub de Beszel. Si más adelante quieres federarlo con Authentik, lo natural es configurar OIDC dentro de Beszel en lugar de meter un forward auth delante.

🔌 Alta del agente local

Este stack monta un socket Unix compartido entre hub y agent, que es la forma recomendada por Beszel para monitorizar el mismo host sin depender de IPs internas.

Después de crear tu usuario administrador en la UI:

  1. Ve a Add System y copia la clave pública y el token.
  2. Pégalos en BESZEL_AGENT_KEY y BESZEL_AGENT_TOKEN.
  3. Actualiza el stack.
  4. En el campo Host / IP del sistema usa /beszel_socket/beszel.sock.

🏠 Integración con Homepage

El hub publica labels homepage.*, así que Homepage puede mostrarlo automáticamente dentro del grupo Observabilidad apuntando a https://beszel.sherlockhomeless.net.