Cómo instalar WordPress en Docker - Stack completo con MariaDB y phpMyAdmin autohospedado
WordPress en Docker: Stack completo autohospedado con MariaDB, phpMyAdmin y Nginx (alternativa Wordpress.com, Wix)
WordPress CMS ligero en contenedor. MariaDB base de datos optimizada. phpMyAdmin para gestión BD visual. Nginx reverse proxy. Volúmenes persistentes. Backups fáciles. HTTPS con Caddy. SSL automático. Escalable. Prodction-ready. AGPL/GPL open source.
¿Qué es WordPress en Docker?
WordPress en Docker es una instalación completa del CMS más popular del mundo (40% de internet) empaquetada en contenedores con MariaDB y phpMyAdmin, permitiendo tener un sitio web totalmente funcional y autohospedado sin dependencia de hosting SaaS como WordPress.com o Wix. Es la solución ideal para blogs, sitios corporativos, tiendas online con total control y propiedad de datos.
Propuesta clave: WordPress CMS contenorizado (último core). MariaDB (fork MySQL optimizado, MySQL-compatible). phpMyAdmin para gestión BD visual (backup/restore). Nginx reverse proxy (rápido, eficiente). Volúmenes Docker persistentes (datos seguros). Backups triviales (cp de volumes). HTTPS automático (Let's Encrypt via Caddy). SSL certificados gratis. Multi-sitio WordPress supportado. Plugins + themes unlimited. Escalable horizontalmente (balancing). Zero vendor lock-in. Datos tuyos siempre. GPL/AGPL open source.
Características principales: WordPress core última versión. MariaDB 10.6+ (optimizado, MySQL-compatible). phpMyAdmin interfaz web BD. Nginx (alta performance). PHP 8.2+ (moderno). Docker Compose setup (fácil deploy). Volúmenes persistentes (wp-data, db-data). Networking automático (service discovery). Health checks. Auto-restart. Backups volumenes fáciles. SSL/HTTPS automático. Reverse proxy Caddy. Multi-sitio WordPress. 60K+ plugins. 10K+ temas. Usuarios/roles RBAC. Media library optimizado. SEO friendly. Cache plugins soportados (Redis, Memcached via compose). Debugging tools (WP-CLI). Database optimization tools. Performance monitoring. Seguridad hardened (WP hardening plugins). Multiidioma. WPML soporte. Staging/development environments fácil. Production-ready. Tested Docker official images.
Características principales
WordPress core última versión
CMS más popular. 40% internet. Potente, flexible, robusto.
MariaDB optimizada
Base datos ligera. MySQL-compatible. Rápida, eficiente.
phpMyAdmin web UI
Gestión BD visual. Backup/restore. Sin CLI necesario.
Nginx high-performance
Web server rápido. Bajo recursos. Reverse proxy integrado.
Volúmenes persistentes
Datos seguros. Docker volumes. Backups triviales.
HTTPS automático
SSL certificados gratis. Let's Encrypt. Caddy integration.
60K+ plugins + 10K+ temas
Ecosistema masivo. Extensibilidad total. Personalizacion infinita.
Multi-sitio WordPress
Múltiples blogs en una instalación. Gestión centralizada.
Users + Roles RBAC
Control acceso granular. Admin, editor, author, contributor.
Media library optimizado
Imágenes, videos, archivos. Redimensionamiento automático.
SEO-friendly
Yoast SEO plugin. Sitemaps. Canonicals. Structured data.
Production-ready
Tested, escalable, seguro. Usado millones sitios.
Requisitos del sistema
- Docker & Docker Compose (versión 20+ recomendada)
- 1 GB - 4 GB RAM mínimo (depende tráfico sitio)
- 5 GB - 50 GB espacio disco (para DB + uploads + contenido)
- Puerto 80 y 443 (HTTP y HTTPS, configurables)
- Volúmenes persistentes para WordPress, MariaDB, phpMyAdmin
- Dominio apuntando a servidor (para HTTPS automático)
- Email servidor SMTP (opcional, para notificaciones)
- Navegador moderno (editar posts, gestión admin)
Instalación con Docker Compose
Opción 1: Docker Compose completo (recomendado)
Crear nginx.conf (si no existe)
Acceder (setup WordPress)
http://localhost - Instalador WordPress (5-minute install)
http://localhost:8080 - phpMyAdmin (user: root, password: tu_contraseña_root_fuerte)
Primer setup WordPress (5 minutos)
- Abre
http://localhost - Selecciona idioma (español disponible)
- Información sitio: título, usuario admin, contraseña, email
- Instala WordPress
- Login con credenciales creadas
- ¡Listo! Dashboard WordPress aparece
Primeros pasos
1. Login admin WordPress
- Abre
http://localhost/wp-admin - Ingresa usuario y contraseña admin
- Dashboard principal aparece
2. Crear primer post
- Dashboard → Posts → Add New
- Título, contenido, categorías, etiquetas
- Publish (publicar)
- Post aparece en blog frontend
3. Personalizar sitio (apariencia)
- Dashboard → Appearance → Themes
- Browse free themes o sube custom theme (ZIP)
- Activate tema seleccionado
- Customize colores, header image, etc
4. Agregar plugins (extensiones)
- Dashboard → Plugins → Add New
- Busca plugin (e.g., "Yoast SEO")
- Install → Activate
- Plugin aparece en sidebar izquierdo para configuración
5. Gestionar usuarios y roles
- Dashboard → Users → Add New
- Email, usuario, contraseña, rol (Administrator, Editor, Author, Contributor, Subscriber)
- Cada rol tiene permisos específicos
6. Configurar páginas estáticas (About, Contact, etc)
- Dashboard → Pages → Add New
- Crea páginas necesarias (About, Contact, Terms)
- Appearance → Menus → crear menú con esas páginas
7. Configurar inicio de sesión del sitio
- Dashboard → Settings → General
- Site Title, Tagline, Site URL
- Timezone, date format, week starts
8. Backup de BD con phpMyAdmin
- Abre
http://localhost:8080 - Database: wordpress → Export
- Descarga SQL file (backup BD completa)
- Guarda en lugar seguro
9. Backup de archivos WordPress (volumes)
10. Instalar Yoast SEO (plugin popular)
- Dashboard → Plugins → Add New
- Busca "Yoast SEO"
- Install → Activate
- Aparece "SEO" en sidebar izquierdo
- Configura meta descriptions, keywords en cada post
11. Habilitar permanentes (Pretty URLs)
- Dashboard → Settings → Permalinks
- Elige "Post name" (para URLs limpias)
- Guarda (WordPress auto-actualiza .htaccess)
12. Configurar comentarios y discusiones
- Dashboard → Settings → Discussion
- Habilita/deshabilita comentarios
- Moderación, spam filters (Akismet plugin)
Casos de uso
- Blogs personales: Full control. Sin publicidad de WordPress.com. Datos tuyos.
- Sitios corporativos: Presencia web profesional. Portfolio. Contacto.
- Tiendas online: WooCommerce plugin integrado. Ventas completas. Inventory management.
- Agencias digitales: Sitios clientes self-hosted. Mantenimiento fácil.
- Portfolios creativos: Fotógrafos, artistas, diseñadores. Galería de trabajos.
- Alternativa WordPress.com/Wix: Total control, bajo costo, open source, no vendor lock-in.
HTTPS con Caddy (producción)
Caddyfile para WordPress
Acceso remoto seguro
https://midominio.com con HTTPS automático y certificado Let's Encrypt
IMPORTANTE: Configurar WordPress URL
Gestión y mantenimiento
Ver logs WordPress
Backup completo (BD + archivos)
Restore de backup
Reiniciar servicios
Actualizar WordPress, plugins, temas
Limpiar caché y optimizar BD
Monitorear consumo
Aumentar límite upload archivos
Comparativa con alternativas
vs WordPress.com (SaaS)
Docker gana: Costo bajo, control total, plugins unlimited, datos tuyos. SaaS gana: Hosting gestionado, soporte, backup automático.
vs Wix
Docker gana: Flexibilidad total, plugins, temas, cost lower scale. Wix gana: Drag-drop builder, hosting, soporte.
vs Joomla/Drupal Docker
WordPress gana: Más plugins, más simple, mayor comunidad. Joomla/Drupal ganan: Más poderosos para casos complejos.
vs Statically generated sites (Hugo, Jekyll)
WordPress gana: Admin UI, plugins, dynamic, fácil para no-devs. Static ganan: Performance ultra-fast, security simple, cheaper hosting.
Comentarios
Publicar un comentario