Auto-hospedar Cal.com brinda control total sobre tu sistema de programación, asegurando privacidad y personalización. Esta guía acompaña a desarrolladores y entusiastas del homelab en la instalación de Cal.com en un VPS usando Docker. Resaltamos diversos proveedores, comparamos sus precios y proporcionamos pasos detallados para desplegar con éxito.
¿Por qué auto-hospedar Cal.com?
Cal.com es una plataforma moderna y de código abierto para calendarios y programación de citas. Hospedarla por ti mismo elimina dependencias de terceros, ofrece privacidad de datos y permite funciones a medida. Es apto para equipos, clínicas o uso personal.
Elección de un proveedor de VPS
Proveedores de VPS económicos y confiables son clave para una experiencia de auto-hospedaje fluida. Aquí las mejores opciones, con sus precios:
| Proveedor | Precio por Mes | Enlace Afiliado | Notas |
|---|---|---|---|
| Contabo | 5.99 EUR | Contabo | Ideal para recursos mayores. |
| Hetzner Cloud | 4.15 EUR | Hetzner | Infraestructura rentable y robusta. |
| DigitalOcean | 6 USD | DigitalOcean | Popular y fácil de usar. |
| Vultr | 6 USD | Vultr | Buena cobertura global. |
| Linode | 5 USD | Akamai Cloud | Rendimiento sólido y asequible. |
Para una comparación completa de VPS, visita /en/best/.
Requisitos previos
- Un VPS con al menos 1 CPU, 2GB de RAM y 20GB de almacenamiento.
- Acceso root o sudo.
- Un nombre de dominio apuntando a la IP de tu VPS (recomendado para certificados SSL).
- Conocimientos básicos de comandos en terminal y Docker.
Paso 1: Configuración del VPS
Actualiza los paquetes:
sudo apt update && sudo apt upgrade -y
Instala Docker y Docker Compose:
curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.sh
sudo usermod -aG docker $USER
Cierra sesión y vuelve a ingresar para aplicar los cambios de grupo.
Paso 2: Preparar ambiente Docker
Crea un directorio para Cal.com:
mkdir -p ~/calcom && cd ~/calcom
Crea un archivo docker-compose.yml:
version: '3'
services:
cal:
image: www.cal.com/cal
restart: unless-stopped
ports:
- "80:80"
- "443:443"
environment:
- CAL_DOMAIN=cal.tudominio.com
- CAL_PROTOCOL=https
volumes:
- cal-data:/app/data
- ./ssl:/etc/ssl:ro
volumes:
cal-data:
Reemplaza cal.tudominio.com por tu dominio real.
Paso 3: Proteger con SSL
Usa Let’s Encrypt para certificados SSL:
Instala Certbot:
sudo apt install certbot
Genera los certificados:
sudo certbot certonly --standalone -d cal.tudominio.com
Guarda los certificados en el directorio ~/calcom/ssl/:
mkdir -p ~/calcom/ssl
sudo cp /etc/letsencrypt/archive/cal.tudominio.com/*.pem ~/calcom/ssl/
Actualiza el docker-compose.yml para montar los certificados y habilitar HTTPS.
Paso 4: Desplegar Cal.com
Inicia el contenedor:
docker-compose up -d
Verifica los logs:
docker logs -f cal
Accede a Cal.com en https://cal.tudominio.com. Asegúrate de que las reglas del firewall permitan los puertos 80 y 443.
Paso 5: Configuración y personalización
- Accede a la interfaz web en tu dominio.
- Configura tu calendario, usuarios e integraciones.
- Para datos persistentes, asegúrate de que el volumen de Docker esté mapeado correctamente.
- Habilita SMTP para notificaciones por correo.
Preguntas frecuentes
¿Cómo actualizo Cal.com a una versión más reciente?
Para actualizar, descarga la última imagen y reinicia el contenedor:
docker pull www.cal.com/cal
docker-compose down
docker-compose up -d
Revisa regularmente el repositorio de Cal.com para nuevas versiones y mantenerte al día con funciones y parches de seguridad.
¿Puedo ejecutar Cal.com con Docker Compose en un VPS mínimo?
Sí, pero asegúrate de que el VPS tenga recursos adecuados (mínimo 2GB de RAM). Para producción, asigna suficiente almacenamiento y CPU. Monitorea el uso de recursos, especialmente si hospedas múltiples servicios.
¿Cómo aseguro mi Cal.com auto-hospedado?
Utiliza HTTPS con certificados SSL válidos, configura cortafuegos para restringir accesos y mantén actualizadas las imágenes de Docker. Es esencial realizar copias de seguridad periódicas de tus volúmenes y configuraciones.
Consejos adicionales
- Para configuraciones avanzadas, considera reverse proxies como Nginx para gestionar SSL y balanceo de carga.
- Automatiza la renovación de SSL con los hooks de renovación de Certbot.
- Usa un cortafuegos (por ejemplo, UFW) para limitar el acceso solo a los puertos necesarios.
- Explora integraciones con servidores de email para notificaciones.
Conclusión
Hospedar Cal.com en un VPS con Docker es sencillo. Al elegir un proveedor asequible, configurar Docker correctamente y asegurar tu servidor, obtienes una plataforma de programación privada adaptada a tus necesidades. Para comparativas detalladas de proveedores de VPS adecuados para alojar apps como Cal.com, visita [comparación completa de VPS]. Para más proyectos de auto-hospedaje, revisa r/selfhosted o awesome-selfhosted para inspiración.
¡Feliz hosting!