Umami Analytics es una herramienta de análisis web de código abierto que proporciona una alternativa ligera y respetuosa con la privacidad a Google Analytics. En este artículo, te mostraremos cómo instalar Umami Analytics en Debian 12 paso a paso. Este tutorial está diseñado para ser técnico pero accesible para los recién llegados.
Requisitos Previos
Antes de comenzar, asegúrate de tener lo siguiente:
- Un servidor con Debian 12 instalado.
- Acceso a una cuenta con privilegios de superusuario (root) o acceso a
sudo
.
Paso 1: Actualizar el Sistema
Es importante asegurarse de que tu sistema esté actualizado. Abre una terminal y ejecuta los siguientes comandos:
sudo apt update
sudo apt upgrade -y
Paso 2: Instalar Node.js y npm
Umami está construido con Node.js, por lo que necesitamos instalar Node.js y npm (el gestor de paquetes de Node.js). Para instalar Node.js, sigue estos pasos:
curl -fsSL https://deb.nodesource.com/setup_16.x | sudo -E bash -
sudo apt install -y nodejs
Verifica la instalación ejecutando:
node -v
npm -v
Paso 3: Instalar PostgreSQL
Umami utiliza PostgreSQL como base de datos. Instálalo con los siguientes comandos:
sudo apt install postgresql postgresql-contrib
sudo systemctl start postgresql
sudo systemctl enable postgresql
Paso 4: Configurar la Base de Datos
Inicia sesión en PostgreSQL como usuario postgres
:
sudo -i -u postgres
Crea un usuario y una base de datos para Umami:
createuser umamiuser
createdb umami -O umamiuser
psql
ALTER USER umamiuser WITH ENCRYPTED PASSWORD 'contraseña_segura';
\q
exit
Paso 5: Descargar y Configurar Umami
Descarga el código fuente de Umami desde GitHub y navega al directorio:
git clone https://github.com/mikecao/umami.git
cd umami
Instala las dependencias necesarias:
npm install
Copia el archivo de configuración de ejemplo y edítalo:
cp .env.example .env
nano .env
Modifica las siguientes líneas para configurar la conexión a la base de datos:
DATABASE_URL=postgresql://umamiuser:contraseña_segura@localhost:5432/umami
Guarda el archivo y cierra el editor.
Paso 6: Inicializar la Base de Datos
Ejecuta el siguiente comando para inicializar la base de datos con las tablas necesarias:
npm run build
npm run update-db
Paso 7: Iniciar Umami
Inicia el servidor de Umami:
npm start
Umami ahora debería estar funcionando en http://localhost:3000
. Puedes acceder a la interfaz de usuario y empezar a configurar tu cuenta.
Paso 8: Configurar un Servidor Web (Opcional)
Para hacer que Umami esté disponible públicamente y protegerlo con HTTPS, puedes configurar un servidor web como Nginx y obtener un certificado SSL gratuito con Let’s Encrypt.
Instalar Nginx
sudo apt install nginx
sudo systemctl start nginx
sudo systemctl enable nginx
Configurar Nginx para Umami
Crea un archivo de configuración para Umami:
sudo nano /etc/nginx/sites-available/umami
Añade la siguiente configuración:
server {
listen 80;
server_name tu_dominio.com;
location / {
proxy_pass http://localhost:3000;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}
Habilita el sitio y reinicia Nginx:
sudo ln -s /etc/nginx/sites-available/umami /etc/nginx/sites-enabled/
sudo nginx -t
sudo systemctl restart nginx
Obtener un Certificado SSL con Let’s Encrypt
Instala Certbot:
sudo apt install certbot python3-certbot-nginx
Obtén y configura el certificado SSL:
sudo certbot --nginx -d tu_dominio.com
Sigue las instrucciones en pantalla para completar el proceso. Certbot configurará automáticamente Nginx para usar el certificado SSL.
Para mejorar el rendimiento y la gestión de tu instalación de Umami, considera utilizar los servicios de Shape.host. Ofrecen soluciones de Linux SSD VPS que proporcionan escalabilidad, alta disponibilidad y un rendimiento superior para tus aplicaciones web. Con Shape.host, puedes asegurarte de que tu infraestructura esté siempre disponible y funcionando de manera óptima.