¿Tienes tantos dispositivos que ya no sabes si ese disco duro polvoriento está donde crees que está o lo has perdido? ¿Eres de los que guarda las garantías en cajas de zapatos con la ilusión de encontrar algo cuando lo necesitas? Pues ha llegado la hora de poner orden, y Homebox viene al rescate ayudándote a hacer inventario, pero sin juzgarte.
Vamos a ver cómo desplegar Homebox usando Docker y Docker Compose apoyándose en Traefik para servir de certificados SSL, acompañado de unos comentarios para que sepas qué está haciendo cada línea (y no lo lances a ciegas como quien instala sin leer la letra pequeña). En tu caso, para Traefik, deberás cambiar “homebox.local.nshlab.de” por tu domino.
🛠️ El docker-compose.yml de la gloria
services:
homebox:
image: ghcr.io/sysadminsmedia/homebox:latest # Imagen oficial más reciente de Homebox
# image: ghcr.io/sysadminsmedia/homebox:latest-rootless # Alternativa sin root, más segura
container_name: homebox # Nombre del contenedor personalizado
restart: unless-stopped # Reinicia el contenedor a menos que se detenga manualmente
environment:
environment:
- HBOX_LOG_LEVEL=${HOMEBOX_LOG_LEVEL} # Nivel de log (debug, info, warn...), definido en el archivo .env
- HBOX_LOG_FORMAT=${HOMEBOX_LOG_FORMAT} # Formato del log (text o json), definido en el archivo .env
- HBOX_WEB_MAX_UPLOAD_SIZE=${HOMEBOX_WEB_MAX_UPLOAD_SIZE} # Tamaño máximo de subida vía web, definido en .env
- HBOX_MAILER_HOST=${HOMEBOX_SMTP_ADDRESS} # Dirección del servidor SMTP, tomada del archivo .env
- HBOX_MAILER_PORT=${HOMEBOX_SMTP_PORT} # Puerto del SMTP, definido en .env
- HBOX_MAILER_USERNAME=${HOMEBOX_SMTP_USER_NAME} # Usuario para el servidor SMTP, desde .env
- HBOX_MAILER_PASSWORD=${HOMEBOX_SMTP_PASSWORD} # Contraseña SMTP, almacenada en el archivo .env
- HBOX_MAILER_FROM=${HOMEBOX_EMAIL_FROM} # Correo del remitente en los emails, definido en .env
volumes:
- homebox-data:/data/ # Monta un volumen persistente en /data del contenedor
ports:
- 3100:7745 # Expone el puerto 7745 del contenedor en el 3100 del host
labels:
- "traefik.docker.network=traefik-network" # Red de Traefik a la que se conecta este servicio
- "traefik.enable=true" # Habilita Traefik para este contenedor
- "traefik.http.routers.homebox.entrypoints=http" # Punto de entrada HTTP
- "traefik.http.routers.homebox.rule=Host(`homebox.local.nshlab.de`)" # Regla de host para enrutar
- "traefik.http.middlewares.homebox-https-redirect.redirectscheme.scheme=https" # Redirección automática a HTTPS
- "traefik.http.routers.homebox.middlewares=homebox-https-redirect" # Aplica la redirección a HTTPS
- "traefik.http.routers.homebox-secure.entrypoints=https" # Punto de entrada HTTPS
- "traefik.http.routers.homebox-secure.rule=Host(`homebox.local.nshlab.de`)" # Regla segura de host HTTPS
- "traefik.http.routers.homebox-secure.tls=true" # Habilita TLS para HTTPS
- "traefik.http.routers.homebox-secure.service=homebox" # Servicio al que se conecta esta ruta segura
- "traefik.http.services.homebox.loadbalancer.server.port=7745" # Puerto interno que maneja Homebox
- "traefik.docker.network=proxy" # Traefik debe usar esta red Docker llamada "proxy"
networks:
proxy:
external: false # Red Docker local (no externa)
volumes:
homebox-data:
driver: local # Tipo de volumen local, persistente
Si no quieres certifcado SSL, elimina la todas las líneas de “labels” y en la red usa la de tu entorno y quita la de proxy.
📁 El .env, con comentarios en Spanish
HOMEBOX_IMAGE_TAG=ghcr.io/sysadminsmedia/homebox:latest # Imagen que se usará para el contenedor
HOMEBOX_HOSTNAME=@nosolohacking.info # Dirección de correo (opcional) o dominio asociado
HBOX_OPTIONS_ALLOW_REGISTRATION=true # Permite que los usuarios se registren (o no)
HBOX_OPTIONS_AUTO_INCREMENT_ASSET_ID=true # Activa IDs automáticos para activos (te ahorra contar)
HOMEBOX_LOG_LEVEL=info # Nivel de detalle de los logs (debug, info, warn, error…)
HOMEBOX_LOG_FORMAT=text # Formato de los logs: "text" o "json"
HOMEBOX_WEB_MAX_UPLOAD_SIZE=20 # Tamaño máximo en MB de los archivos que se pueden subir
HOMEBOX_SMTP_ADDRESS=smtp@gmail.com # Dirección del servidor SMTP (para enviar correos)
HOMEBOX_SMTP_PORT=587 # Puerto SMTP, 587 suele ser el más común con STARTTLS
HOMEBOX_SMTP_USER_NAME=homebox@nosolohacking.info # Usuario para autenticación SMTP
HOMEBOX_SMTP_PASSWORD=Ci6oFSiXddLNkWuTobstuE # Contraseña para enviar correos (¡ojo con esto!)
HOMEBOX_EMAIL_FROM=homebox@nosolohacking.info # Dirección que aparecerá como remitente
Ahora ejecuta:
chmod 600 .env
🧪 ¿Y ahora qué?
- Guarda el
docker-compose.ymly el.enven la misma carpeta. - Abre terminal y ve a esa carpeta.
- Lanza la magia:
docker compose up -d
Y voilá, tu Homebox estará en marcha. Si todo ha ido bien, abre http://IPServidor:3100 si usas Traefik con tu dominio si te va el rollo pro, usa la entrada DNS que generaste.
🧾 Resumen pa’ los que no leen
- Desplegamos Homebox con Docker + Docker Compose.
- Configuramos los logs, subidas y SMTP desde un
.env. - Incluimos soporte para Traefik, con HTTPS redirigido como dios manda.
- Te dimos comentarios en español porque los contenedores también merecen amor bilingüe.
¿Y ahora qué? Pues toca inventariar. Registra tus cacharros, adjunta garantías y empieza a ser el señor del orden digital que tu router necesita. ¡Nos leemos en el siguiente tutorial, container-lover! 🚀
