Skip to content

Proyecto para crear un blog con wordpress con Docker.

License

Notifications You must be signed in to change notification settings

juanico10/Wordpress

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

68 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Wordpress

Proyecto para crear un blog con wordpress con Docker.

alt text

WP%2Bnginx%2Bredis.png
WordPress x NGINX x REDIS

Versión latest docker Wordpress

Docker Image Version (latest)

Las arquitecturas soportadas por esta imagen son:

Architecture Tag
fpm wordpress:fpm
fpm-alpine wordpress:fpm-alpine

Documentación oficial

Enlaces a la documentación oficial de wordpress:

atencion Documentación oficial

atencion Código oficial Github

atencion Código oficial en docker hub

* Un blog usando la imagen oficial de WordPress.

PREPARACIÓN DE LOS ARCHIVOS Y DIRECTORIOS

Crear los directorios donde se montarán los volúmenes de persistencia

Creamos los directorios donde se montarán los volúmenes de persistencia

mkdir /patch/to/data/wordpress/wordpress
mkdir /patch/to/data/wordpress/mysql
mkdir /patch/to/data/wordpress/redis

Directorios:

  • files Contendrá los archivos almacenados en nuestra nube. También contendrá los ficheros de configuración, ficheros de las aplicaciones instaladas, etc. Es importante realizar una copia de seguridad de este directorio/volumen de persistencia.
  • mysql Contendrá la totalidad de ficheros de nuestra base de datos MySQL.
  • redis Contiene las bases de datos que genera el servidor Redis. Obviamente también es interesante realizar una copia de seguridad de este directorio.
  • backup Las copias de seguridad de la base de datos. En caso de utilizar un volumen llamado /backup, puede realizar una copia de seguridad de la base de datos y almacenarla en este directorio tan solo tenéis que ejecutar el comando sudo docker-compose exec db backup

Imágenes docker y arquitecturas

  • Supported architectures: amd64, arm32v5, arm32v6, arm32v7, arm64v8, i386, mips64le, ppc64le, s390x

  • Imágenes recomendadas: fpm-alpine, php8.0-fpm-alpine, wordpress:latest

Crear la red interna para comunicar con los demás contenedores

Creada la red interna, ya podemos levantar el contenedor

docker network create wordpress_internal

LEVANTAR EL CONTENEDOR DE WORDPRESS

En la misma ubicación que hemos indicado la carpeta WordPress, descargamos el docker-compose.yml

☑️ docker-compose.yml

Y creamos el archivo de configuración .env con la configuración del archivo .env 📦

touch .env
nano .env

Cuando se abra el editor de texto configuraremos la configuración del archivo con el dominio, la password, la database y el usuario.

Definir las variables del archivo .env

Las variables de entorno de configuración del archivo .env y modificamos los volúmenes del docker-compose.yml:

variables de entorno de configuración del archivo .env:

  HOST_DOMAIN=domain.com

  DATABASE=wordpress

  PASSWORD=password

  USER=user

  ROOT_PASSWORD=password

Levantamos el contenedor con:

docker-compose up -d

Una vez ejecutado el comando se descargarán las imagenes del docker-compose, se crearán y levantarán los contenedores.

  Si ya hemos descargado las imagenes previamente, sólo se crearán y levantarán los contenedores.

Levantar REDIS

Una vez hecho esto, tienes que instalar un plugin para WordPress que te permite interaccionar con Redis. Este plugin o complemento se llama Redis Object Cache.

Una vez lo tengas configurado y levantado, hay trabajo que realizar. Tienes que editar el archivo wp-config.php

alt text

y añadir los siguientes parámetros en el archivo:

define('WP_REDIS_HOST', 'wpredis');
define('WP_REDIS_PORT', 6379);
define('WP_REDIS_TIMEOUT', 1);
define('WP_REDIS_READ_TIMEOUT', 1);
define('WP_REDIS_DATABASE', 0);

Una vez instalado, tienes que acceder a su configuración y habilitarlo para que entre en funcionamiento. Comprueba que todos los parámetros que te devuelve son correctos y que todo funciona como se espera.

Acceder al contenedor o ver el log del contenedor

  • Vemos todos los contenedores:
docker-compose logs -f
  • Acceso al contenedor
docker exec -u root -t -i wordpress /bin/bash

ACCEDER A LA WEB O DASHBOARD DE WORDPRESS

Con el contenedor levantado tan solo tenemos que abrir el navegador web e ingresar a la URL que hemos indicado en el docker compose. Una vez ingresadas la credenciales tendremos acceso al panel de control. Fíjense que estamos accediendo de forma segura mediante https y TLS. alt text

🎉 ¡Ready!