GNU/Linux >> Tutoriales Linux >  >> Panels >> Docker

Cómo instalar WordPress con Docker, una guía fácil de seguir

Este tutorial se le mostrará cómo ejecutar una instalación de WordPress en contenedores Docker mediante Docker Compose.

WordPress es el CMS (Sistema de gestión de contenido) más popular a nivel mundial, lo que lo convierte en una consideración de primera categoría al crear un nuevo sitio. Está construido sobre una base de datos MySQL con procesamiento PHP.

La configuración de una instalación local de WordPress implica varios pasos y puede llevar mucho tiempo. Por lo general, debe configurar un servidor web local, configurar el servidor para ejecutar código PHP y configurar una base de datos MySQL.

Sin embargo, la forma más sencilla de configurar un entorno de WordPress local es utilizar contenedores con Docker.

Si está comenzando con Docker y aún no lo ha instalado, le recomiendo comenzar con nuestro tutorial:Instalar Docker en Ubuntu:una guía paso a paso.

1. Instalar Docker Compose

Cuando se usa mucho Docker, administrar varios contenedores diferentes se vuelve engorroso. Docker Compose es una herramienta que puede definir e iniciar fácilmente aplicaciones de varios contenedores en Docker.

Con Compose, puede definir todos los servicios en un único archivo YAML y, con un solo comando, puede activar o desactivar todo.

En este tutorial, ejecutaremos dos contenedores (WordPress y MySQL) en un entorno contenedor aislado usando Docker Compose.

Ahora déjeme mostrarle cómo instalar la última versión de Docker Compose para ayudarlo a administrar aplicaciones de varios contenedores.

Primero, verifique la versión actual y, si es necesario, actualícela con el siguiente comando:

sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose

Luego aplique permisos ejecutables al binario:

sudo chmod +x /usr/local/bin/docker-compose

Finalmente, puede verificar que la instalación fue exitosa al verificar la versión:

docker-compose --version
docker-compose version 1.29.2, build 5becea4c

Para obtener más información sobre Docker Compose, puede consultar la documentación oficial.

2. Preparar directorio

Necesitas crear un nuevo directorio llamado wordpress en /srv para alojar los datos de WordPress. De esta forma, conseguimos una cierta persistencia de los datos.

sudo mkdir -p /srv/wordpress
cd /srv/wordpress/

Como sabe, los datos en los contenedores de Docker no son persistentes. Esto significa que pierde todos los datos cuando detiene el contenedor y lo vuelve a ejecutar; ya no habrá ningún dato dentro.

Por supuesto, esto se puede evitar agregando un volumen de Docker, como verá más adelante en este tutorial.

3. Crear el archivo YAML

En el reino de Docker Compose, todos los recursos necesarios para ejecutar un contenedor deben definirse en un archivo YAML llamado docker-compose.yaml .

Docker Compose luego leerá dichos archivos y se comunicará con el demonio de Docker para crear, configurar o destruir los recursos definidos.

En nuestro caso, docker-compose.yaml El archivo contendrá las definiciones de servicio para nuestra configuración dockerizada de WordPress.

Además, Docker Compose nos permite vincular estos servicios con redes y volúmenes compartidos.

Entonces, comencemos con la creación de un nuevo docker-compose.yaml archivo dentro del /srv/wordpress directorio con un editor de su elección. Rellénelo con esta configuración:

version: '3'
services:
  mysql:
    image: mysql:latest
    restart: always
    environment:
      MYSQL_ROOT_PASSWORD: my_password
      MYSQL_DATABASE: wordpress
      MYSQL_USER: wordpress_user
      MYSQL_PASSWORD: wordpress_password
    volumes:
      - mysql_data:/var/lib/mysql
  wordpress:
    image: wordpress:latest
    depends_on:
      - mysql
    ports:
      - 8080:80
    restart: always
    environment:
      WORDPRESS_DB_HOST: mysql:3306
      WORDPRESS_DB_USER: wordpress_user
      WORDPRESS_DB_PASSWORD: wordpress_password
    volumes:
      - ./wp-content:/var/www/html/wp-content
volumes:
  mysql_data:

Un poco de explicación aquí:

  • Definimos dos serviciosmysql y wordpress , que se vinculan automáticamente entre sí.
  • Usan una imagen de Docker , que decidirá qué versión de MySQL y WordPress usar. En este caso, sus últimos versiones.
  • Entorno MySQL :WordPress utilizará estas variables de entorno para conectarse al contenedor de MySQL.
  • Entorno de WordPress :para que se ejecute un contenedor de WordPress, debe configurar los detalles de conectividad de la base de datos.
  • La imagen de WordPress se basa en Apache, que se ejecuta en puerto 80 por defecto. Asigne el puerto Apache predeterminado al puerto 8080 de la computadora local.
  • datos_mysql :Los datos que fluyen hacia esta base de datos se conservarán en un volumen con nombre mysql_data de modo que incluso cuando elimine el contenedor, los datos seguirán viviendo en su máquina y se podrán volver a montar dentro de un nuevo contenedor.

Además, los volumes parámetro en wordpress es lo que le dice a Docker que muestre el wp-content directorio en el sistema de archivos local.

Así que ahora tenemos almacenamiento persistente para partes de nuestro sitio de WordPress, como wp-content directorio. El wp-content contiene todo el contenido proporcionado por el usuario. Básicamente, todo lo que puedes subir a tu sitio termina aquí.

Sin embargo, siempre que tenga tanto la base de datos como su wp-content carpeta, siempre puede recuperar su sitio, incluso si todo lo demás se perdió.

4. Ejecute WordPress con Docker Compose

Ahora está listo para ejecutar el comando Docker para construir su entorno local. Asegúrate de estar todavía en wordpress directorio. Ejecute el siguiente comando:

sudo docker-compose up -d

El comando comenzará a ejecutar secuencias de comandos, y debería ver aparecer varios mensajes de "Descargando" y "Esperando" en la terminal mientras Docker extrae las imágenes de MySQL y WordPress. Esto tardará un poco en ejecutarse.

Cuando vigile de cerca su sistema de archivos local, verá que /srv/wordpress/wp-content la carpeta se creará y se completará con archivos y carpetas después de que se hayan extraído las imágenes de Docker.

La instalación de WordPress con un contenedor de MySQL y un contenedor de WordPress ha sido exitosa.

5. Acceda a su instalación de WordPress

Finalmente, podemos finalizar la instalación a través de la interfaz web de WordPress con nuestros contenedores en ejecución. En su navegador web, vaya a http://localhost:8080 o http://your_ip_address:8080 .

Es posible que deba averiguar su dirección IP mediante el comando ifconfig.

La página de selección de idioma le dará la bienvenida. Seleccione su idioma y haga clic en Continuar.

Complete la información necesaria en la siguiente pantalla y haga clic en "Instalar WordPress".

Finalmente, cuando se le solicite, haga clic en Login .

La pantalla estándar de inicio de sesión de WordPress te saludará. Una vez que se haya autenticado con éxito, puede comenzar a usar WordPress.

Opciones adicionales de redacción de Docker

Primero, asegúrese de estar en /srv/wordpress directorio.

Para ver el estado de una aplicación Docker, ejecute el siguiente comando:

sudo docker-compose ps

Puedes detener todos los contenedores en ejecución usando el siguiente comando:

sudo docker-compose stop

Para iniciar contenedores existentes que se crearon con docker-compose up :

sudo docker-compose start

El comando que se muestra a continuación detendrá y eliminará contenedores y todas las redes:

sudo docker-compose down

Conclusión

Le presentamos el concepto detrás de Docker Compose, y ahora debería poder definir incluso aplicaciones simples de varios contenedores.

En este tutorial, utilizó Docker Compose para instalar un WordPress con Docker. Ahora tienes WordPress en funcionamiento.

Esperamos que haya disfrutado leyendo esta guía. ¡Feliz atraque!


Docker
  1. Cómo instalar WordPress con Docker en Ubuntu

  2. Cómo instalar y alojar un servidor OpenVPN con Docker

  3. Cómo instalar Jenkins con Docker

  4. Cómo instalar WordPress usando Docker

  5. Cómo instalar Nextcloud con Docker en su servidor Linux

Cómo instalar Mailtrain en Ubuntu 18.04 con Docker

Cómo instalar WordPress con Docker en Ubuntu 16.04 LTS

Cómo instalar WordPress en CentOS 7.1 con Apache

Instalar WordPress con Docker en Ubuntu 20.04

Cómo instalar WordPress con EasyEngine en Ubuntu 20.04

Cómo instalar Docker en Mac