Hola a tod@s,
En este post vamos a ver como desplegar homepage con Docker.
Homepage es un panel de control de aplicaciones moderno, totalmente estático, rápido, seguro, con proxy completo y altamente personalizable, con integraciones para más de 100 servicios y traducciones a varios idiomas, se configura fácilmente mediante archivos YAML o mediante la detección de etiquetas Docker.
- Nos creamos el registro DNS del tipo CNAME para homepage apuntando a la máquina que tiene instalada el Docker:
- Ahora vamos a crear la estructura de directorios y permisos para el contenedor de homepage:
- sudo mkdir -p /opt/docker/homepage/config
- sudo mkdir -p /opt/docker/homepage/icons
- sudo mkdir -p /opt/docker/homepage/images
- sudo chmod -R 775 /opt/docker/homepage
- Así quedaría nuestra estructura de directorios:
- Lo siguiente que haremos será crearnos el archivo docker-compose.yml para homepage, sudo nano /opt/docker/homepage/docker-compose.yml:
- Iniciamos Nginx Proxy Manager, cd /opt/docker/homepage, sudo docker compose up -d:
- Con sudo docker ps -a, vemos el contenedor levantado:
- Con docker exec -it nginxpm sh -c «apk add –no-cache curl >/dev/null 2>&1; curl -sI http://homepage:3000«, comprobamos que Nginx Proxy Manager puede acceder a homepage:
- Ahora nos vamos al panel de administración de Nginx Proxy Manager para crear el Proxy Host:
- Add Proxy Host:
- En la pestaña Details:
- Domain Names: ragasys.eu
- Scheme: http
- Forward Hostname / IP: homepage
- Forward Port: 300
- Websockets Support
- Block Common Exploits
- En la pestaña SSL:
- Seleccionamos en Certificate nuestros certificados SSL
- Marcamos Force SSL
- Marcamos HTTP/2 Support
- Save
- Aquí vemos el host creado y online:
- Si accedemos al host homepage, vemos que ya está utilizando los certificados SSL de Let’s Encrypt, vemos también que nos da un error de validación, es un error bastante común la primera vez que accedemos a Homepage (detrás de un proxy inverso como Nginx Proxy Manager, ahora veremos cómo solucionarlo:
- Para solucionar este error vamos a editar el fichero settings.yml, sudo nano /opt/docker/homepage/docker-compose.yml:
- Y añadimos la variable, HOMEPAGE_ALLOWED_HOSTS: «homepage.ragasys.net,localhost,127.0.0.1»:
- Aplicamos los cambios, cd /opt/docker/homepage, docker compose up -d:
- Accedemos a nuestro host, https://homepage.ragasys.net y vemos que ya tenemos el panel de homepage:
- Ahora vamos a ir configurando los distintos ficheros de homepage, para ir personalizando nuestro panel, esta será la estructura de directorios y los ficheros:
- Empezaremos por el fichero sudo nano settings.yaml:
- sudo nano services.yaml, aquí muestro algunos ejemplos que tenemos que ir completando con todo lo que tenemos en nuestra infraestructura:
- sudo nano widgets.yaml, los widgets para el dashboard:
- sudo nano bookmarks.yaml, los enlaces personales para el dashboard:
- Y así nos iría quedando nuestro panel de Homepage:
Saludos y espero que os sea de ayuda 😉
































