Cómo instalar YOURLS en Docker - Acortador de URLs autohospedado en Docker

YOURLS | URL Shortener | Docker

YOURLS: Acortador de URLs profesional autohospedado en Docker

Acortador de URLs con control total. Analytics completo. Click tracking. API REST. Plugins. Dominios custom. Control de datos 100%. PHP + MySQL. 10K+ GitHub stars. Open source MIT.

¿Qué es YOURLS?


YOURLS (Your Own URL Shortener) es un acortador de URLs profesional, open source y completamente autohospedable diseñado para dar control total sobre tus links. A diferencia de Bit.ly (pago, tracking remoto), TinyURL (sin control), o Dub.co (SaaS), YOURLS es gratuito forever, tus datos permanecen en tu servidor, y tienes acceso a analytics completo, API, plugins, y customización sin límites.

Stack probado: PHP + MySQL. En desarrollo activo desde 2009. 10,000+ stars GitHub. Soporta dominios custom para links branded. Analytics detallado: click counts, referrers, geolocalización. API REST completa para integración. Sistema de plugins extensible. Multi-usuario con permisos. Admin panel intuitivo. Rápido, ligero, escalable. Control absoluto sobre datos y privacidad.

Para empresas, agencias, equipos: Acorta links con tu dominio. Traduce en branding + control de datos. Sin pagar por click. Sin sorpresas SaaS. Analytics privados, en tu servidor.

Características principales

Acortamiento custom

URLs personalizadas. Keywords custom. Ej: tu.dominio/campana-q2

Dominio custom

Usa tu dominio para links. Branding + confianza. Múltiples dominios soportados.

Analytics completo

Click counts, referrers, geolocalización, navegador, sistema operativo, visitante directo.

API REST

Integra con tu app. Crea/edita/estadísticas links programáticamente.

Sistema de plugins

Docenas de plugins. Extiende funcionalidad sin modificar core.

Multi-usuario

Múltiples usuarios con permisos granulares. Admin, editor, viewer.

Linksets (grupos)

Organiza links en grupos. Por campaña, por proyecto, por mes.

Panel intuitivo

Admin panel limpio. Edita links, ve stats, configura settings.

QR automático

Genera QR automáticamente para cada link acortado.

Expiración de links

Links con fecha de expiración. Temporal o permanente.

Importar/Exportar

CSV import/export. Migración desde otros acortadores.

Control total

Open source MIT. Auditable. Sin vendor lock-in. Datos tuyos.

Requisitos del sistema

  • Docker & Docker Compose
  • 512 MB - 1 GB RAM (PHP + MySQL)
  • 5+ GB espacio disco (base de datos, logs)
  • Puerto 80/443 (HTTP/HTTPS)
  • MySQL 5.5+ o MariaDB (incluido en docker-compose)
  • PHP 7.2+ (incluido en imagen Docker)
Muy ligero: YOURLS consume pocos recursos. Perfecto para VPS barato o homelabs.

Instalación con Docker Compose

Opción 1: Setup simple

cat > docker-compose.yml << 'EOF' version: '3.8' services: db: image: mysql:8 container_name: yourls_db restart: unless-stopped environment: - MYSQL_DATABASE=yourls - MYSQL_USER=yourls - MYSQL_PASSWORD=contraseña-segura - MYSQL_ROOT_PASSWORD=root-password volumes: - yourls_db:/var/lib/mysql yourls: image: yourls:latest container_name: yourls restart: unless-stopped ports: - "80:80" environment: - YOURLS_SITE=http://localhost - YOURLS_USER=admin - YOURLS_PASS=contraseña-admin - YOURLS_DB_HOST=db - YOURLS_DB_NAME=yourls - YOURLS_DB_USER=yourls - YOURLS_DB_PASS=contraseña-segura depends_on: - db volumes: - ./data:/var/www/html/user volumes: yourls_db:

Iniciar

docker compose up -d

Acceder

http://localhost con usuario admin/contraseña-admin

Primeros pasos

1. Acceder al admin

  1. Abre http://localhost
  2. Login con admin/contraseña-admin (o las que configuraste)
  3. Dashboard principal con estadísticas

2. Crear primera URL acortada

  1. Panel → "Add a new link"
  2. URL larga: https://ejemplo.com/articulo/muy-largo/con-parametros
  3. Custom keyword (opcional): articulo-2025
  4. Acorta
  5. Se genera: tu.dominio/articulo-2025

3. Ver estadísticas

  1. Dashboard → ves todos tus links
  2. Click en link → detalle: clicks, referrers, navegadores, geo
  3. Histórico completo de accesos

4. Usar API

# Crear URL vía API curl -X POST http://localhost/yourls/rest/url/shorten.php \ -d "username=admin&password=contraseña&url=https://ejemplo.com&shorturl=test"

5. Configurar dominio custom

  1. Admin → Settings → Domain
  2. Ingresa tu dominio: tu-dominio.com
  3. Configura DNS para apuntar a tu servidor
  4. Actualiza YOURLS_SITE en env
  5. Links ahora usan tu-dominio.com/shortcode

6. Multi-usuario

  1. Admin → Users → Add new
  2. Username, password, role (admin, user, editor)
  3. Cada usuario ve solo sus links (o todos si admin)

Casos de uso

  • Campañas marketing: Links acortados y trackeable por campaña. Analytics detallado.
  • Agencias: Acorta links con dominio client. Branding + control.
  • SaaS: API para integrar en plataforma. Genera links desde app.
  • Redes sociales: Links cortos y bonitos para Twitter, Instagram. QR auto.
  • Email marketing: Click tracking en emails. Sin confiar en Mailchimp/Klaviyo para esto.
  • Eventos: Acorta links por evento. Trackea asistencia/registros vía clicks.
  • Afiliados: Links personalizados por afiliado. Tracking de conversiones.

Administración avanzada

Plugins populares

  • YOURLS Geo IP: Geolocalización de visitors
  • YOURLS QR Code: QR automático para links
  • YOURLS Simple API: API simplificada
  • YOURLS Bulk Shortener: Acorta URLs en lote

Backup de datos

docker exec yourls_db mysqldump -u yourls -p yourls > backup-$(date +%Y%m%d).sql

Restore de backup

cat backup-20260522.sql | docker exec -i yourls_db mysql -u yourls -p yourls

Ver logs

docker logs -f yourls

Reiniciar servicios

docker compose restart

Actualizar YOURLS

docker compose pull docker compose up -d

HTTPS con Caddy (producción)

Caddyfile

tudominio.com { reverse_proxy localhost:80 }

Actualizar YOURLS_SITE

environment: - YOURLS_SITE=https://tudominio.com

Acceso remoto seguro

https://tudominio.com con HTTPS automático. Links generados con dominio completo.

Comparativa con alternativas

vs Bit.ly

YOURLS gana: Gratuito, self-hosted, analytics privados, sin pagar por click. Bit.ly gana: UI pulida, soporte enterprise.

vs Dub.co

YOURLS gana: Self-hosted, API abierta, plugins. Dub.co gana: SaaS moderno, UI.

vs TinyURL

YOURLS gana: Control, analytics, API, plugins. TinyURL gana: Simple, sin servidor.

vs Kutt

YOURLS gana: Más maduro, 15+ años. Kutt gana: UI más moderna.

Mejor para: Empresas, agencias, equipos que necesiten control total, branding, analytics privados, y sin sorpresas de precios. Forever gratuito.

Comentarios

Entradas populares de este blog

Cómo Instalar y configurar SERVIDOR VPN WIREGUARD en MIKROTIK 🔐 #VPN #Wireguard #Mikrotik #RouterOS

Cómo instalar y configurar DSM SYNOLOGY 7.2.2 en PC | Guía completa, instalación, RAID 1, SMB

Cómo INSTALAR y CONFIGURAR OpenVPN en MIKROTIK. Guía completa paso a paso.