Saltar a contenido

Desplegar un WordPress en ACA.

Tarea

  • Crear la base de datos
  • Preparar WordPress
  • Desplegar WordPress en Azure Container Apps
  • Instalar WordPress desde el navegador
  • Analizar la arquitectura

Hay 3 formas de hacer esta tarea:

  1. Instalando wordpress desde la Marketplace de Azure. Pero esta opción no la elegiremos porque al darle las cosas hechas suele ser más costosa y además no tendríamos casi que configurar.
  2. Con la opción directa de Azure al crear la Base de datos MySQL. Pero esta nos pasaría lo mismo que anteriormente y es que se harías las configuraciones de forma más automática y nosotros queremos ver el proceso.

    Imagen

    opciones

  3. Paso a paso como realizaremos a continuación.


1. Crear la base de datos para WordPress

1.1 Crear el server MySQL

En este caso al ser WordPress, vamos a utilizar la base de datos de 'MySQL' porque así lo recomiendan en la documentación oficial de WordPress (también se puede usar MariaDB).

Elegimos específicamente este servicio de Azure, el flexible, ya que es la opción más moderna, configurable y recomendada por Microsoft Azure para nuevos despliegues.

opción

Cuando le demos a crear, seleccionamos la opción de "Servidor Flexible" --> "Creación rápida"

servidor flexible

Elegimos la opción de creacion rápida, ya que, la otra es más compleja y se utiliza para redees privadas, tuning avanzado, backups avanzados, seguridad empresarial, alta disponibilidad...

Configuramos:

configuración

Muy importante esta ultima configuración de "Agregar regla de firewall para la direción IP actual. De esta forma podremos conectarnos al servidor MySQL desde nuestro ordenador para administrar la base de datos.

configuración


1.2 Crear la Base de datos de wordpress

Ahora dentro del server, lo que tenemos que hacer es crear la base de datos de la siguiente forma.

base de datos


1.3 Crear el usuario de Wordpress

Necesitamos un usuario específico (no usar el admin).


Conectarnos a la Base de datos

Para ello, nos conectamos a MySQL (Utilizaremos 'Azure Cloud Shell' aunque también podemos utilizar 'MySQL Workbench' o 'Azure Query Editor')

Nos debemos asegurar de que estas opciones están activadas, sino, no nos dejará acceder.

redes

Luego iremos a este otro apartado para copiar el enlace de conexión que introduciremos en "Azure cloud shell"

comando mysql

comando


Lanzamos los comandos para crear el usario

Ver bases de datos
show databases;
Crear el usuario
create user 'wpuser'@'%' identified by '<contraseña>';
Dar permisos
grant all privileges on wordpressdb.* to 'wpuser'@'%';
flush pivileges;

comandos

Comprobamos también lo que acabamos de realizar con:

Comprobar permisos
select user,host from mysql.user;

permisos


2. Desplegar WordPress en Azure Container Apps (ACA)

Creamos el ACA con las siguientes configuraciones

"Datos básicos"

datos baśicos

"Contenedor"

Aquí buscaremos primero en hub.docker.com para ver que imágenes hay disponibles. En nuestro caso elegiremos la oficial.

dockerhub

Dentro de la imagen oficial elegiremos el tag más adecuado, en mi caso he investigado y el recomendable para que funcione todo correcto es la versión con apache esta última por ejemplo 6.9.4-php8.2-apache

Así que, esa será la que pondremos aquí

conteneor

"Entrada"

entrada


3. Configuramos las variables en ACA

WORDPRESS_DB_HOST=tu-esrvidor.mysql.datbase.azure.com
WORDPRESS_DB_USER=wpuser
WORDPRESS_DB_NAME=wordpressdb
WORDPRESS_DB_PASSWORD= <contraseña>
WORDPRESS_DEBUG=1   # esta variables evitará que nos de error al intentar conectar con la base de datos

VARIABLES


4. Conectarnos a wordpress

Antes de acceder hay que tener en cuenta una cosa, Wordpress para conectar a la base de datos, por defecto tiene la obligación de conectarse de forma segura con SSL, por lo que nosotros no tenemos esto configurado y no nos dejaría.

Para solucionar esto debemos desactivar la opción "require_secure_transport=ON" la tenemos que poner a OFF, para ello, vamos a seguir los siguiente pasos de la imagen.

parametros del servidor

NO HACER ESTO PARA ENTORNOS REALES


Ahora ya podremos acceder a través de la URL

url

Como podemos ver, se accede perfectamente, así que pasaremos a la instalación

wordpress

wordpress

wordpress


5. Esquema de Arquitectura de la infraestructura

esquema