Tutorial

Desplegar sus aplicaciones con Easypanel en un VPS

Despliegue9 min de lectura5 pasos

Easypanel es un panel de control moderno que convierte su VPS en una plataforma de despliegue elegante. Con su interfaz cuidada, sus buildpacks Nixpacks y su SSL automático, compite con los PaaS comerciales sin dejar de ser self-hosted. Esta guía le acompaña desde la instalación hasta la producción: requisitos exactos, configuración post-instalación, copias de seguridad y resolución de los errores más frecuentes.

Contenido· Por qué desplegar Easypanel en su VPS1/8
  1. 01Por qué desplegar Easypanel en su VPS
  2. 02Los beneficios concretos de Easypanel
  3. 03Requisitos exactos para Easypanel
  4. 04Instalar Easypanel y desplegar una aplicación
  5. 05Configuración post-instalación: Traefik y TLS avanzado
  6. 06Actualizaciones y copias de seguridad de Easypanel
  7. 07Resolución de problemas: los errores más frecuentes
  8. 08Easypanel, Coolify o Dokploy: ¿cuál elegir?

Por qué desplegar Easypanel en su VPS

Easypanel se posiciona como una alternativa moderna y visual a CapRover o Dokku. Se apoya en Docker y en Nixpacks para construir automáticamente sus aplicaciones desde un repositorio Git, sin que usted tenga que escribir un Dockerfile. Su interfaz, más reciente y más ergonómica que la de la mayoría de los paneles open source, permite gestionar aplicaciones, bases de datos, certificados y dominios en unos pocos clics. Easypanel integra de forma nativa Traefik como reverse proxy: cada aplicación desplegada obtiene automáticamente su certificado Let's Encrypt y su enrutamiento. Es un excelente equilibrio entre la simplicidad de un PaaS comercial y el control de un servidor que le pertenece, especialmente adecuado para las agencias que despliegan proyectos de clientes con regularidad.

Los beneficios concretos de Easypanel

  • Builds automáticos mediante Nixpacks: despliegue Node, Python, PHP o Go sin escribir un Dockerfile.
  • Interfaz moderna e intuitiva para gestionar aplicaciones, dominios y bases de datos.
  • Traefik integrado: reverse proxy y SSL Let's Encrypt configurados automáticamente.
  • Bases de datos en un clic: PostgreSQL, MySQL, MongoDB y Redis listas para usar.
  • Despliegue desde GitHub con reconstrucción automática en cada push.
  • Plantillas de aplicaciones populares (WordPress, n8n, Ghost…) desplegables al instante.
  • Aislamiento por proyecto: cada cliente o aplicación en su propia red Docker.

Requisitos exactos para Easypanel

Easypanel incorpora Traefik y un builder Nixpacks, lo que exige algo más de memoria que un Portainer.

RAM: 1 GB mínimo para una instalación sin builds activos, 2 GB recomendados para uso habitual. En cuanto aloje varias aplicaciones con sus bases de datos, apunte a 4 GB: los builds Nixpacks consumen temporalmente mucha RAM y un servidor de 1 GB arriesga matar el proceso de compilación a mitad.

CPU: 1 vCPU es suficiente para empezar, 2 vCPU recomendados en cuanto ejecute builds frecuentes o bases de datos exigentes.

Disco: 30 GB SSD mínimo. Prevea más si aloja bases de datos voluminosas o imágenes Docker pesadas (Node, Java).

SO: Ubuntu 22.04 LTS o Ubuntu 24.04 LTS limpio con acceso root. Debian 12 también funciona. Docker lo instala automáticamente el script de Easypanel.

Red / DNS: configure un registro A para el dominio del panel (panel.midominio.com) que apunte a la IP de su VPS. Se recomienda encarecidamente un registro wildcard *.midominio.com para evitar añadir manualmente cada subdominio de aplicación. Los puertos 80, 443 y 3000 deben estar abiertos en su firewall para la instalación inicial.

Instalar Easypanel y desplegar una aplicación

  1. Lanzar la instalación automatizada

    En un Ubuntu limpio, ejecute el script oficial como root:

    curl -sSL https://get.easypanel.io | sh

    El script instala Docker (si está ausente), Traefik y Easypanel en pocos minutos. Al finalizar, muestra la URL de acceso al panel: http://IP_VPS:3000. Verifique que Docker funciona correctamente con docker ps antes de pasar al siguiente paso.

  2. Crear la cuenta de administrador

    Abra http://IP_VPS:3000 en su navegador. Cree su cuenta de administrador con una dirección de correo electrónico y una contraseña robusta (al menos 16 caracteres). Vaya a continuación a Settings → General e introduzca el dominio del panel (panel.midominio.com): Easypanel solicitará inmediatamente un certificado Let's Encrypt a través de Traefik. Una vez obtenido el certificado, el panel es accesible por HTTPS y el puerto 3000 puede cerrarse en su firewall.

  3. Crear un proyecto y una aplicación

    En la interfaz, haga clic en New Project: un proyecto agrupa sus servicios (aplicación + base de datos + caché) en una red Docker aislada. Dentro del proyecto, haga clic en Create Service → App. Indique el repositorio de GitHub (acceso OAuth o token), la rama de producción y el directorio raíz si es necesario. Easypanel detecta automáticamente el stack mediante Nixpacks — Node, Python, PHP, Ruby, Go o un Dockerfile si está presente.

  4. Añadir una base de datos y variables de entorno

    En el mismo proyecto, haga clic en Create Service → Database y elija PostgreSQL, MySQL, MongoDB o Redis. Easypanel genera un nombre de host interno (postgres por defecto), un usuario y una contraseña aleatoria. Copie la cadena de conexión propuesta e inyéctela en su aplicación desde la pestaña Environment de su servicio App. Los servicios del mismo proyecto se comunican a través de su nombre de servicio en la red Docker interna — no es necesario exponer la base de datos en Internet.

  5. Configurar el dominio y desplegar

    En la pestaña Domains de la aplicación, añada mi-app.midominio.com: Easypanel configura Traefik y obtiene el certificado SSL automáticamente. Haga clic en Deploy: Nixpacks construye la imagen y pone la aplicación en línea. Consulte los logs de build en tiempo real desde la pestaña Deployments para seguir el progreso y detectar posibles errores.

Configuración post-instalación: Traefik y TLS avanzado

Easypanel expone Traefik a través de dos puntos de entrada: el panel de Traefik (desactivado por defecto por razones de seguridad) y la API de enrutamiento interna que el panel gestiona automáticamente. Normalmente no necesita tocar la configuración de Traefik directamente.

TLS automático. Para cada dominio añadido en la pestaña Domains de un servicio, Easypanel configura un resolvedor ACME de Let's Encrypt (HTTP-01 en el puerto 80). El certificado se renueva automáticamente antes de su expiración. Si su dominio está detrás de Cloudflare, asegúrese de que el modo SSL/TLS esté configurado en Full (strict) — un modo «Flexible» causaría un bucle de redirección infinito, ya que Traefik ya redirige HTTP hacia HTTPS.

Configuraciones avanzadas. A través de la pestaña Advanced de cada servicio puede:
- inyectar etiquetas Traefik personalizadas (rate-limiting, middlewares de autenticación);
- montar volúmenes Docker persistentes (útil para los datos de aplicaciones que no usan una base de datos dedicada);
- definir un healthcheck Docker para que Traefik solo enrute el tráfico hacia las réplicas sanas.

Puerto interno. Easypanel detecta el puerto expuesto mediante Nixpacks o la directiva EXPOSE del Dockerfile. Si su aplicación escucha en un puerto no estándar, decláreselo explícitamente en el campo Port del servicio para que Traefik sepa a dónde enrutar las solicitudes.

Actualizaciones y copias de seguridad de Easypanel

Actualizar Easypanel. El panel se actualiza desde la interfaz: Settings → General → Update. Por línea de comandos, vuelva a ejecutar el script de instalación — detecta la instalación existente y actualiza los contenedores sin reconfigurar su entorno:

curl -sSL https://get.easypanel.io | sh

Hacer copia de seguridad de los volúmenes Docker. Easypanel almacena sus datos (configuración, certificados, estado de Traefik) en volúmenes Docker. Para hacer una copia de seguridad del estado completo del panel:

# Listar los volúmenes de Easypanel
docker volume ls | grep easypanel

# Guardar un volumen en un archivo tar
docker run --rm -v easypanel_data:/data -v $(pwd):/backup \
  alpine tar czf /backup/easypanel-backup-$(date +%Y%m%d).tar.gz /data

Copias de seguridad de bases de datos de aplicaciones. Easypanel ofrece desde 2023 una funcionalidad de copia de seguridad programada para PostgreSQL, MySQL/MariaDB y MongoDB, con exportación a un bucket S3 compatible. Configúrela desde la pestaña Backups de cada servicio de base de datos: elija la frecuencia (por hora, diaria, semanal) y los datos de acceso a su bucket S3 o Backblaze B2.

Restauración. Para restaurar un volumen Docker del que se hizo copia de seguridad:

docker run --rm -v easypanel_data:/data -v $(pwd):/backup \
  alpine tar xzf /backup/easypanel-backup-20261001.tar.gz -C /

Resolución de problemas: los errores más frecuentes

Puerto 80 o 443 ya en uso. Si Traefik no arranca en el primer lanzamiento, verifique que ningún otro servicio esté escuchando en esos puertos: ss -tlnp | grep -E ':(80|443)'. Un nginx o Apache preinstalado en el VPS bloquea el inicio. Detenga el servicio que compite (systemctl stop nginx) y luego reinicie los contenedores con docker compose up -d en el directorio de Easypanel.

Docker no instalado o versión insuficiente. El script de instalación gestiona este caso, pero si lo ejecuta en un sistema que ya tiene una versión antigua de Docker, puede obtener errores de compatibilidad. Verifique la versión: docker --version (Docker 24+ recomendado). Si es necesario, desinstale la versión antigua y vuelva a ejecutar el script.

DNS no propagado — certificado SSL no encontrado. Si Let's Encrypt no puede verificar el dominio (registro DNS aún no propagado, o TTL largo), Traefik mostrará un error de certificado. Verifique la propagación desde su terminal: dig +short panel.midominio.com debe devolver la IP de su VPS. La propagación DNS puede tardar desde unos minutos hasta varias horas según el registrador y el TTL.

Error de certificado tras cambio de IP. Si migra su VPS a una nueva IP sin actualizar el DNS, el desafío ACME falla. Actualice su registro A, espere la propagación y fuerce la renovación del certificado desde Settings → Certificates → Renew.

Build de Nixpacks falla por falta de memoria. En un VPS con 1 GB de RAM, los builds de Node.js o las imágenes multi-stage pueden fallar silenciosamente. Añada swap para absorber los picos: fallocate -l 2G /swapfile && chmod 600 /swapfile && mkswap /swapfile && swapon /swapfile. Haga el swap persistente añadiendo /swapfile none swap sw 0 0 en /etc/fstab.

Easypanel, Coolify o Dokploy: ¿cuál elegir?

Desplace la tabla

CriterioEasypanelCoolifyDokploy
LicenciaPropietaria (plan gratuito generoso)Open source (Apache 2.0)Open source (MIT)
RAM mínima recomendada2 GB2 GB1 GB
Base de datos internaSQLite (integrada)SQLite / PostgreSQLPostgreSQL (requerida)
BuildpacksNixpacks + Dockerfile + imagen DockerNixpacks + Dockerfile + HerokuNixpacks + Dockerfile + imagen Docker
Plantillas de apps100+ (WordPress, n8n, Ghost, Plausible…)80+ (Appwrite, Supabase, n8n…)50+ (WordPress, n8n, Directus…)
Multi-servidorSí (beta, workers Swarm)Sí (estable, Swarm + SSH)Sí (estable, multinodo)
Plan gratuito / self-hostedSelf-hosted gratuito, plan cloud de pago100% self-hosted gratuito100% self-hosted gratuito

Active el despliegue automático conectando un webhook de GitHub: cada push en su rama de producción dispara una reconstrucción Nixpacks sin intervención. Para los proyectos de clientes, cree un Project distinto por cliente con el fin de aislar las redes y las bases de datos. En un VPS con memoria limitada, vigile la RAM durante los builds Nixpacks y añada swap: las compilaciones Node o las imágenes pesadas pueden saturar un servidor pequeño y hacer que falle el despliegue.

Despliegue sus proyectos con Easypanel

Un VPS Cloud ServOrbit con Ubuntu, con los recursos y el dominio wildcard adecuados, le permite instalar Easypanel y poner sus aplicaciones en línea en unos pocos clics.

¿Necesita ayuda?

Consulte nuestro centro de ayuda y nuestra FAQ, o contacte con nuestro equipo: llamada, WhatsApp o correo electrónico. Soporte en francés, inglés y árabe.

Escribir por WhatsAppse abre en una pestaña nueva