Docker en un VPS Plesk te da lo mejor de dos mundos: la potencia de los contenedores y la simplicidad de un panel gráfico.
No necesitas dominar la línea de comandos. Desde Plesk puedes buscar imágenes en Docker Hub, desplegar contenedores, configurar variables de entorno, mapear puertos y conectar aplicaciones a tus dominios, todo con clics.
Este tutorial te guía desde la instalación hasta casos de uso reales.
¿Por qué Docker en Plesk?
Docker permite ejecutar aplicaciones aisladas en contenedores. Cada contenedor tiene su propio entorno: sistema operativo, dependencias y configuración. Esto resuelve problemas comunes:
| Problema tradicional | Solución con Docker |
|---|---|
| ”En mi máquina funciona” | Contenedores idénticos en cualquier servidor |
| Conflictos de versiones PHP/Node | Cada app tiene sus dependencias aisladas |
| Instalaciones complejas | Una imagen preconfigurada lista para usar |
| Actualizaciones arriesgadas | Desplegar nueva versión sin tocar la anterior |
| Probar tecnologías nuevas | Contenedor temporal sin afectar el servidor |
Docker en Plesk vs Docker por terminal
La extensión de Docker en Plesk no reemplaza Docker completo. Es una capa de gestión que simplifica las operaciones más comunes:
| Operación | Terminal | Plesk Docker |
|---|---|---|
| Buscar imágenes | docker search | Interfaz con filtros |
| Desplegar contenedor | docker run con flags | Formulario guiado |
| Ver logs | docker logs | Pestaña integrada |
| Variables de entorno | -e VAR=valor | Campos de formulario |
| Mapeo de puertos | -p host:container | Checkboxes y campos |
| Docker Compose | Archivo YAML + terminal | Editor integrado + Stacks |
Para administración avanzada, siempre puedes usar SSH. Pero para el 80% de los casos, la interfaz de Plesk es suficiente.
Requisitos previos
Antes de empezar, verifica que tienes:
- VPS con Plesk Web Pro o Web Host
- Sistema operativo compatible: AlmaLinux 8/9, Rocky Linux, Debian 10/11/12, Ubuntu 20.04/22.04
- Mínimo 2 GB de RAM (4 GB recomendado si vas a ejecutar varios contenedores)
- Acceso de administrador a Plesk
Nota: En Plesk para Windows, Docker solo funciona conectando a un host remoto Linux.
Paso 1: Instalar la extensión Docker
La extensión de Docker es gratuita para todas las ediciones de Plesk.
Desde el catálogo de extensiones
- Inicia sesión en Plesk como administrador
- Ve a Extensiones en el menú lateral
- Busca “Docker”
- Haz clic en Instalar
La instalación tarda 1-2 minutos. Plesk instala Docker Engine en el servidor automáticamente.
Verificar la instalación
Una vez instalada, aparece Docker en el menú lateral de Plesk.
Haz clic para abrir. Verás dos pestañas principales:
- Contenedores: Lista de contenedores activos
- Imágenes: Imágenes descargadas localmente
Si ves estas pestañas, Docker está listo.
Paso 2: Buscar y descargar imágenes
Las imágenes son plantillas de contenedores. Docker Hub tiene miles de imágenes oficiales y de la comunidad.
Buscar imágenes desde Plesk
- Ve a Docker → Contenedores → Ejecutar contenedor
- En el catálogo, usa el buscador
- Filtra por:
- Oficiales: Imágenes mantenidas por Docker
- Verificadas: De proveedores certificados
- Populares: Más descargas
Imágenes más útiles para hosting
| Imagen | Uso | Ejemplo |
|---|---|---|
nginx | Servidor web ligero | Proxy reverso, sitios estáticos |
mariadb | Base de datos MySQL compatible | BD adicional aislada |
redis | Caché en memoria | Acelerar WordPress/aplicaciones |
portainer/portainer-ce | Dashboard Docker | Gestión avanzada de contenedores |
nextcloud | Almacenamiento en la nube | Alternativa a Dropbox |
gitea/gitea | Servidor Git | Repositorios privados |
mongo | Base de datos NoSQL | Apps Node.js/Python |
Descargar una imagen sin ejecutar
Si quieres descargar la imagen pero no crear el contenedor todavía:
- En el catálogo, encuentra la imagen
- Haz clic en el icono de descarga (flecha hacia abajo)
- Selecciona la versión (tag):
latest,stable, o versión específica - La imagen aparece en la pestaña Imágenes
Paso 3: Crear tu primer contenedor
Vamos a crear un contenedor de Redis como ejemplo práctico. Redis es un sistema de caché que acelera aplicaciones web.
Desplegar Redis
- Ve a Docker → Contenedores → Ejecutar contenedor
- Busca “redis”
- Selecciona la imagen oficial
redis - Elige el tag
7-alpine(versión ligera) - Haz clic en Ejecutar
Configurar el contenedor
Antes de que se ejecute, Plesk te muestra la pantalla de configuración:
Configuración básica:
| Campo | Valor para Redis |
|---|---|
| Nombre | redis-cache |
| Inicio automático | ✅ Activado |
| Límite de memoria | 512 MB (ajusta según necesidad) |
Mapeo de puertos:
Por defecto, “Mapeo automático de puertos” está activado. Esto asigna un puerto aleatorio del host (ej: 32768) al puerto interno del contenedor (6379 para Redis).
Para un puerto fijo:
- Desactiva “Mapeo automático de puertos”
- En “Mapeo manual”, introduce:
6379→6379
Variables de entorno:
Redis no requiere variables obligatorias. Para otros contenedores como MySQL, necesitarás configurar contraseñas aquí.
Haz clic en Ejecutar.
Verificar que funciona
El contenedor aparece en la lista con estado “Running” (verde).
Para ver los logs:
- Haz clic en el nombre del contenedor
- Ve a la pestaña Logs
- Deberías ver:
Ready to accept connections
Paso 4: Configuración de contenedores
¿Quieres Docker listo para usar en tu VPS?
El VPS Plesk de Avantys puede incluir la extensión Docker. Despliega contenedores desde el primer día.
Variables de entorno
Muchas imágenes requieren configuración via variables de entorno. Ejemplo con MariaDB:
| Variable | Descripción | Ejemplo |
|---|---|---|
| MYSQL_ROOT_PASSWORD | Contraseña root (obligatoria) | MiPassword123! |
| MYSQL_DATABASE | BD a crear automáticamente | mi_aplicacion |
| MYSQL_USER | Usuario adicional | app_user |
| MYSQL_PASSWORD | Contraseña del usuario | UserPass456! |
Para configurar:
- Al crear el contenedor, en la sección Variables de entorno
- Haz clic en Añadir variable
- Introduce nombre y valor
- Repite para cada variable
Volúmenes (persistencia de datos)
Por defecto, los datos dentro de un contenedor se pierden si lo eliminas. Los volúmenes guardan datos de forma persistente.
Configurar un volumen:
- En la configuración del contenedor, sección Volúmenes
- Haz clic en Añadir volumen
- Configura:
- Ruta en el host:
/var/lib/docker/volumes/redis-data - Ruta en el contenedor:
/data - Permisos: Lectura/Escritura
- Ruta en el host:
Ahora los datos de Redis persisten aunque reinicies o recrees el contenedor.
Límites de recursos
Para evitar que un contenedor consuma todos los recursos:
- En configuración del contenedor
- Sección Límite de memoria
- Desactiva “Ilimitado”
- Introduce el límite en MB (ej: 1024 para 1 GB)
Nota: El límite de CPU no está disponible actualmente en la interfaz de Plesk. Usa terminal si lo necesitas.
Paso 5: Proxy Rules - Conectar contenedores a dominios
Las Proxy Rules permiten que un dominio apunte a una aplicación Docker sin usar puertos extraños en la URL.
Sin proxy: https://midominio.com:32768
Con proxy: https://midominio.com
Configurar Proxy Rule
Requisito previo: El contenedor debe tener mapeo de puertos manual (no automático).
- Ve a Sitios web y dominios → Tu dominio
- Haz clic en Proxy Rules (o Reglas de proxy)
- Haz clic en Añadir regla
Configuración:
| Campo | Descripción |
|---|---|
| URL | Ruta donde se accede (vacío = raíz del dominio) |
| Contenedor | Selecciona tu contenedor Docker |
| Puerto | Puerto mapeado del contenedor |
Ejemplo: Nextcloud en un subdominio
- Crea subdominio
cloud.tudominio.com - Despliega contenedor Nextcloud con puerto manual 8080→80
- En el subdominio → Proxy Rules → Añadir regla:
- URL: (vacío)
- Contenedor: nextcloud
- Puerto: 8080
Ahora https://cloud.tudominio.com muestra Nextcloud.
Proxy Rule para una ruta específica
Si quieres que el contenedor responda solo en una ruta:
- URL:
/api - El resto de la configuración igual
Accederías via https://tudominio.com/api
Importante: Algunas aplicaciones no funcionan bien en subrutas. Usa subdominios para mayor compatibilidad.
Paso 6: Docker Compose con Stacks
Para aplicaciones complejas con múltiples contenedores (ej: WordPress + MySQL + Redis), Docker Compose es la solución.
Plesk soporta Docker Compose mediante Stacks.
Crear un Stack
- Ve a Docker → Stacks → Añadir Stack
- Introduce un nombre para el proyecto
- Elige el método:
- Editor: Escribe/pega el YAML directamente
- Archivo: Sube un docker-compose.yml
- Directorio: Usa un archivo del directorio de un sitio web
Ejemplo: Stack de Nextcloud completo
version: '3'
services:
db:
image: mariadb:10.6
restart: always
environment:
MYSQL_ROOT_PASSWORD: rootpassword
MYSQL_DATABASE: nextcloud
MYSQL_USER: nextcloud
MYSQL_PASSWORD: nextcloudpass
volumes:
- db_data:/var/lib/mysql
app:
image: nextcloud:latest
restart: always
ports:
- "8080:80"
environment:
MYSQL_HOST: db
MYSQL_DATABASE: nextcloud
MYSQL_USER: nextcloud
MYSQL_PASSWORD: nextcloudpass
volumes:
- nextcloud_data:/var/www/html
depends_on:
- db
volumes:
db_data:
nextcloud_data:
- Pega el YAML en el editor
- Haz clic en Crear
Plesk ejecuta docker compose up y crea ambos contenedores conectados.
Gestionar Stacks
Una vez creado, puedes:
- Detener: Pausa todos los contenedores del stack
- Reiniciar: Detiene y vuelve a iniciar
- Actualizar: Aplica cambios al YAML
- Eliminar: Borra el stack completo
Caso práctico 1: Redis para acelerar WordPress
Redis como caché de objetos mejora el rendimiento de WordPress significativamente.
Paso 1: Desplegar Redis
- Docker → Ejecutar contenedor → redis:7-alpine
- Configuración:
- Nombre: wordpress-redis
- Puerto manual: 6379 → 6379
- Inicio automático: ✅
Paso 2: Conectar WordPress a Redis
- En tu WordPress, instala el plugin Redis Object Cache
- Edita wp-config.php (vía Plesk File Manager):
define('WP_REDIS_HOST', '127.0.0.1');
define('WP_REDIS_PORT', 6379);
define('WP_REDIS_DATABASE', 0);
- En WordPress → Ajustes → Redis, haz clic en “Enable Object Cache”
Verificar funcionamiento
En el panel de Redis Object Cache deberías ver:
- Status: Connected
- Hits/Misses: Estadísticas de caché
El TTFB de WordPress debería reducirse notablemente.
Caso práctico 2: Gitea - Servidor Git privado
Gitea es una alternativa ligera a GitLab para repositorios Git privados.
Desplegar Gitea
- Docker → Ejecutar contenedor → gitea/gitea
- Configuración:
- Puerto manual: 3000 → 3000 (web), 22 → 2222 (SSH)
- Volumen: /data → gitea_data
- Inicio automático: ✅
Configurar acceso web
-
Crea subdominio
git.tudominio.com -
Proxy Rule:
- Contenedor: gitea
- Puerto: 3000
-
Accede a
https://git.tudominio.compara completar la instalación
Configurar SSL
El subdominio hereda el certificado SSL del dominio principal si usas Let’s Encrypt con wildcard, o puedes generar uno específico desde Plesk.
Caso práctico 3: Base de datos adicional aislada
A veces necesitas una versión específica de MySQL/MariaDB que no coincide con la del servidor.
Desplegar MariaDB 11
- Docker → Ejecutar contenedor → mariadb:11
- Configuración:
- Puerto manual: 3307 → 3306 (diferente al MySQL del sistema)
- Variables de entorno:
- MYSQL_ROOT_PASSWORD: tu_password_segura
- MYSQL_DATABASE: mi_app
- Volumen: /var/lib/mysql → mariadb11_data
Conectar tu aplicación
Usa estos datos de conexión:
| Parámetro | Valor |
|---|---|
| Host | 127.0.0.1 |
| Puerto | 3307 |
| Usuario | root |
| Contraseña | (la que configuraste) |
| Base de datos | mi_app |
Portainer: Gestión avanzada de Docker
Para gestión más completa, Plesk incluye integración con Portainer.
Instalar Portainer
- Ve a Docker
- Haz clic en Instalar Portainer
- Espera a que se despliegue el contenedor
Acceder a Portainer
- Una vez instalado, haz clic en Ir a Portainer
- Crea usuario administrador en el primer acceso
- Selecciona el entorno Docker local
Portainer ofrece:
- Dashboard visual de todos los contenedores
- Logs en tiempo real
- Terminal integrada en contenedores
- Gestión de redes Docker
- Monitorización de recursos
Solución de problemas comunes
El contenedor no arranca
Revisar logs: Docker → Contenedor → Logs
Causas comunes:
- Falta variable de entorno obligatoria (ej: MYSQL_ROOT_PASSWORD)
- Puerto ya en uso por otro servicio
- Imagen incompatible con la arquitectura del servidor
Proxy Rule no funciona
Verificar:
- El contenedor tiene mapeo de puertos manual (no automático)
- El contenedor está corriendo (estado verde)
- La aplicación escucha en el puerto correcto dentro del contenedor
Probar acceso directo:
Intenta http://IP-servidor:puerto-mapeado para verificar que el contenedor responde.
Los datos se pierden al reiniciar
Solución: Configura volúmenes para persistir datos.
Si ya perdiste datos, no hay recuperación posible. Siempre configura volúmenes antes de usar el contenedor en producción.
El contenedor consume demasiados recursos
Solución: Configura límites de memoria en la configuración del contenedor.
Para límites de CPU, usa terminal:
docker update --cpus="1.5" nombre_contenedor
FAQ: Preguntas frecuentes
¿La extensión Docker de Plesk es gratuita?
Sí, la extensión básica es gratuita para todas las ediciones de Plesk. El soporte para Docker remoto requiere licencia adicional.
¿Puedo usar Docker si mi Plesk está en Windows?
Sí, pero solo conectando a un host Docker remoto en Linux. No puedes ejecutar contenedores Linux directamente en Plesk Windows.
¿Los contenedores Docker se incluyen en los backups de Plesk?
No. Los contenedores y sus datos no se respaldan con el backup estándar de Plesk. Debes respaldar los volúmenes manualmente o usar las herramientas de backup de Docker.
¿Cuántos contenedores puedo ejecutar?
Depende de los recursos de tu VPS. Con 4 GB de RAM puedes ejecutar cómodamente 5-10 contenedores ligeros. Monitoriza el uso de recursos para evitar saturación.
¿Docker afecta el rendimiento de mis sitios web normales?
Si configuras límites de recursos apropiados, no debería. Sin límites, un contenedor problemático podría consumir todos los recursos disponibles.
¿Puedo usar imágenes personalizadas?
Sí. Puedes subir imágenes a Docker Hub y desplegarlas desde Plesk, o usar Dockerfiles con la función de Stacks.
Conclusión
Docker en Plesk democratiza el uso de contenedores. Ya no necesitas ser experto en línea de comandos para:
- Desplegar aplicaciones complejas en minutos
- Aislar servicios para evitar conflictos
- Probar nuevas tecnologías sin riesgo
- Escalar componentes específicos
Las funciones más útiles para hosting:
- Proxy Rules: Conectar contenedores a dominios sin configuración nginx manual
- Stacks: Desplegar aplicaciones multi-contenedor con un YAML
- Portainer: Cuando necesitas gestión avanzada sin salir del navegador
Si gestionas múltiples aplicaciones o necesitas tecnologías que no están en tu stack de hosting tradicional, Docker es la respuesta.
Para más información técnica detallada, puedes consultar la documentación oficial de Plesk sobre uso de Docker.
Guías relacionadas del cluster VPS Plesk
Continúa aprendiendo sobre Plesk:
- WordPress Toolkit en Plesk: Guía completa
- Migrar de cPanel a Plesk sin downtime
- VPS Windows Server con Plesk
- VPS cPanel vs VPS Plesk: ¿Cuál elegir?
¿Quieres Docker integrado en tu panel de hosting?
Despliega aplicaciones en contenedores con un solo clic y gestiónalo todo desde una interfaz gráfica intuitiva.
Última actualización: Diciembre 2026. Guía verificada con Plesk Obsidian 18.x y Docker Extension 2.x.
VPS Plesk Administrado
La potencia de un VPS con la facilidad de Plesk. Soporte en español.