Composición de Docker de WordPress

Composicion De Docker De Wordpress



WordPress es uno de los sistemas de gestión de contenidos gratuitos y de código abierto más populares. Se utiliza para impulsar todo, desde pequeños blogs hasta publicaciones masivas debido a su simplicidad y versatilidad.

WordPress está escrito en PHP y respaldado por una base de datos MySQL. Esto significa que utiliza la pila Linux, Apache, MySQL y PHP o LAMP. La arquitectura central de WordPress es modular, lo que proporciona amplias funciones y extensibilidad mediante complementos y temas.

Como desarrollador, es posible que se encuentre con la necesidad de ejecutar rápidamente una instancia de WordPress sin configurar todos los requisitos y herramientas del servidor. Aquí es donde entra Docker.







En este tutorial, aprenderemos cómo configurar rápidamente un WordPress básico usando Docker Compose y herramientas simples.



Requisitos

Para utilizar este tutorial, necesitará lo siguiente:



  1. Docker Engine instalado en su máquina host.
  2. Permisos suficientes para ejecutar contenedores Docker.
  3. Docker Compose instalado en su máquina.
  4. Conocimientos básicos para escribir y utilizar archivos de composición Docker.

Definición del archivo Docker Compose

Para que podamos ejecutar WordPress usando Docker Compose, necesitamos definir el archivo de redacción. Esto incluirá todas las herramientas y servicios que necesitamos para ejecutar WordPress.





Cree un nuevo archivo llamado docker-compose.yml.

$ tocar docker-compose.yml

Edite el archivo y agregue la configuración como se muestra:



servicios:
base de datos:
imagen: mysql:8.0.27
dominio: '--plugin-de-autenticación-predeterminado=contraseña_nativa_mysql'
volúmenes:
- db_data: / era / biblioteca / MySQL
reiniciar: siempre
ambiente:
      - MYSQL_ROOT_PASSWORD =mysql
      - BASE DE DATOS MYSQL = wordpress
      - USUARIO_MYSQL = wordpress
      - CONTRASEÑA_MYSQL = wordpress
exponer:
      - 3306
      - 33060
wordpress:
imagen: wordpress:último
puertos:
      - 80 : 80
reiniciar: siempre
ambiente:
      - WORDPRESS_DB_HOST =bd
      - WORDPRESS_DB_USER = wordpress
      - WORDPRESS_DB_PASSWORD = wordpress
      - WORDPRESS_DB_NAME = wordpress
volúmenes:
datos_db:

En el Dockerfile anterior, tenemos la configuración dividida en las siguientes secciones. Cada sección realiza un conjunto específico de instrucciones.

La primera es la sección db. Esta sección le indica a Docker que realice las siguientes acciones:

  • Utilice la imagen 'mysql:8.0.27'.
  • Configure el complemento de autenticación predeterminado en 'mysql_native_password'.
  • Monte un volumen llamado 'db_data' para almacenar datos MySQL de forma persistente.
  • Reinicie el servicio automáticamente.

También definimos variables de entorno para la configuración de MySQL, incluida la contraseña de root, el nombre de la base de datos, el usuario y la contraseña de usuario.

Finalmente, exponemos los puertos 3306 y 33060 para conexiones de bases de datos.

En la sección de WordPress le indicamos a Docker que realice las siguientes acciones:

  • Utiliza wordpress: última imagen.
  • Asigne el puerto 80 en el host al puerto 80 en el contenedor para acceso web.
  • Reinicie el servicio automáticamente.

También especificamos las variables de entorno para que WordPress se conecte a la base de datos MySQL, incluido el host de la base de datos, el usuario, la contraseña del usuario y el nombre de la base de datos.

Por último, configuramos los volúmenes de Docker para el almacenamiento de datos persistente.

Ejecutando los contenedores

Una vez que tengamos la configuración especificada a nuestro gusto, podemos proceder y ejecutar los contenedores y los servicios definidos en el archivo de redacción como:

$ ventana acoplable componer -d

Esto debería generar todas las imágenes e iniciar los servicios como se define anteriormente.

Configurando WordPress

Una vez que todos los servicios estén funcionando, puedes dirigirte a la dirección http://localhost:80 para configurar su instancia de WordPress.

Conclusión

En este tutorial, cubrimos los conceptos básicos de cómo ejecutar rápidamente una instancia de WordPress en un contenedor Docker usando Docker Compose.