Instalación de Dashy en Debian 12
¿Que es dashy?
dashy es un dashboard personalizable que nos permite tener todos nuestros servicios web en un solo lugar, de esta manera podemos acceder a ellos de una manera mas rapida y sencilla.
Requisitos
- Debian 12 instalado.
- Acceso a internet.
- privilegios de sudo o root.
Instalación de dashy
Para instalar dashy en Debian 12, primero tenemos que instalar unas dependencias necesarias:
root@dashy:~# apt install curl gnupg git -y
Todavía nos falta instalar nodejs y yarn
Para la instalación de yarn, primero tenemos que añadir el repositorio de yarn a nuestro sistema:
root@dashy:~# curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | apt-key add -
root@dashy:~# echo "deb https://dl.yarnpkg.com/debian/ stable main" | tee /etc/apt/sources.list.d/yarn.list
Ahora actualizamos la lista de paquetes e instalamos yarn:
root@dashy:~# apt update && apt install yarn -y
En el caso de nodejs necesitamos instalar la versión 17, para ello descargamos el binario de la página oficial de nodejs con el siguiente comando:
root@dashy:~# wget https://nodejs.org/dist/v17.9.1/node-v17.9.1-linux-x64.tar.xz
Descomprimimos el archivo descargado:
root@dashy:~# tar -C /opt -xf node-v17.9.1-linux-x64.tar.xz
Ahora nos movemos al directorio donde se ha descomprimido nodejs:
root@dashy:~# cd /opt/node-v17.9.1-linux-x64/
root@dashy:/opt/node-v17.9.1-linux-x64# ls
CHANGELOG.md LICENSE README.md bin include lib share
Utilizamos los siguientes comandos para copiar los archivos a los directorios del sistema:
root@dashy:/opt/node-v17.9.1-linux-x64# cp -r bin/* /usr/bin/
root@dashy:/opt/node-v17.9.1-linux-x64# cp -r include/* /usr/include/
root@dashy:/opt/node-v17.9.1-linux-x64# cp -r lib/* /usr/lib/
root@dashy:/opt/node-v17.9.1-linux-x64# cp -r share/* /usr/share/
Comprobamos que nodejs se ha instalado correctamente:
root@dashy:~# node -v
v17.9.1
Ahora ya podemos instalar dashy. Clonamos con git el repositorio de dashy y accedemos al directorio que nos ha creado:
root@dashy:~# git clone https://github.com/Lissy93/dashy.git && cd dashy
Instalamos las dependencias de dashy con yarn:
root@dashy:~/dashy# yarn
Ejecutamos el siguiente comando para compilar dashy:
root@dashy:~/dashy# yarn build
Por último, ejecutamos el siguiente comando para iniciar dashy:
root@dashy:~/dashy# yarn start
Ahora podemos acceder a dashy desde un navegador web en la dirección http://ip_servidor:4000
:
Configuración de dashy
Para acceder a Dashy tenemos que usar el puerto 4000, pero podemos cambiarlo editando el archivo “server.js” que se encuentra en la carpeta “dashy”:
buscamos la linea “const port = process.env.PORT || (isDocker ? 8080 : 4000);” y cambiamos el puerto 4000 por el que queramos.
const port = process.env.PORT || (isDocker ? 8080 : 80);
Si queremos modificar algo en el dashboard, podemos hacerlo por la interfaz web, solo tenemos que pulsar en el icono de la llave inglesa que se encuentra en la parte superior derecha o también podemos modificar el archivo “conf.yml” que se encuentra en la carpeta “dashy/user-data”.
Si por ejemplo queremos modificar el nombre del dashboard, modificamos la linea “title: Dashy” por el nombre que queramos:
title: Home Dashboard
Volvemos a iniciar dashy con el comando “yarn start” y ya veremos el nombre que hemos puesto en el dashboard:
Iniciar dashy en el arranque del sistema
Para iniciar dashy en el arranque del sistema, primero tenemos que crear un archivo de servicio en la carpeta “/etc/systemd/system”:
root@dashy:~# nano /etc/systemd/system/dashy.service
Y añadimos las siguientes lineas:
[Unit]
Description=dashy
After=network.target
[Service]
Restart=always
RestartSec=5
Type=simple
User=root
Group=root
WorkingDirectory=/root/dashy
ExecStart="/usr/bin/yarn" start
TimeoutStopSec=30
[Install]
WantedBy=multi-user.target
Guardamos el archivo y recargamos el daemon de systemd:
root@dashy:~# systemctl daemon-reload
Ahora ya podemos iniciar dashy con el siguiente comando:
root@dashy:~# systemctl start dashy
Compobamos que el servicio se ha iniciado correctamente:
root@dashy:~# systemctl status dashy.service
* dashy.service - dashy
Loaded: loaded (/etc/systemd/system/dashy.service; disabled; preset: enabled)
Active: active (running) since Tue 2024-04-30 17:38:06 UTC; 14min ago
Main PID: 312 (node)
Tasks: 23 (limit: 38296)
Memory: 121.0M
CPU: 1.134s
CGroup: /system.slice/dashy.service
|-312 node /usr/share/yarn/bin/yarn.js start
|-333 /bin/sh -c "node server"
`-334 /usr/bin/node server
Para que dashy se inicie en el arranque del sistema, ejecutamos el siguiente comando:
root@dashy:~# systemctl enable dashy
Con esto ya tendríamos dashy instalado en Debian 12 y funcionando correctamente.