Skip to content

Instantly share code, notes, and snippets.

@pablokbs
Created December 16, 2018 14:40
Show Gist options
  • Save pablokbs/da8fb5c52d2268e1a65ae265849125e4 to your computer and use it in GitHub Desktop.
Save pablokbs/da8fb5c52d2268e1a65ae265849125e4 to your computer and use it in GitHub Desktop.
Docker-compose para wordpress con mysql
## docker-compose para correr wordpress con una base de datos en mysql
## by PeladoNerd https://youtu.be/eoFxMaeB9H4
version: '3.1'
services:
wordpress:
image: wordpress:php7.1-apache
ports:
- 8080:80
environment:
WORDPRESS_DB_HOST: mysql
WORDPRESS_DB_USER: root
WORDPRESS_DB_PASSWORD: root
WORDPRESS_DB_NAME: wordpress
links:
- mysql:mysql
mysql:
image: mysql:8.0.13
command: --default-authentication-plugin=mysql_native_password
environment:
MYSQL_DATABASE: wordpress
MYSQL_ROOT_PASSWORD: root
volumes:
- ~/docker/mysql-data:/var/lib/mysql
@samuel984
Copy link

@pablokbs Gracias mi pana por yo soy un aprendiz con tus videos tengo una pregunta totan pero pregunta al fin, logre crear los contenedores en una maquina vistual en GCP como deberia accedes al contenedor de wordpress desde un navegador externo

@NAZAuy
Copy link

NAZAuy commented Jun 14, 2021

PeladoNerd vengo siguiendo tu curso, pero estoy haciéndolo en WLS, gracias por el curso.

## docker-compose para correr wordpress con una base de datos en mysql (MariaDB)
## by PeladoNerd https://youtu.be/eoFxMaeB9H4
## by NAZA.uy - variante para Windows con MariaDB

version: '3.1'

services:

  wordpress:
    image: wordpress:php7.4-apache
    ports:
      - 8080:80
    environment:
      WORDPRESS_DB_HOST: mariadb
      WORDPRESS_DB_USER: root
      WORDPRESS_DB_PASSWORD: pwdroot
      WORDPRESS_DB_NAME: wordpressdb
    volumes:
      - D:\DockerStore\wordpress:/var/www/html/wp-content
    links:
      - mariadb:mariadb

  mariadb:
    image: mariadb:10.6.1-focal
    environment:
      MYSQL_DATABASE: wordpressdb
      MYSQL_ROOT_PASSWORD: pwdroot
    volumes:
      - D:\DockerStore\mariadb:/var/lib/mysql

@jonathanavalos
Copy link

@NAZAuy En windows en que path creas el archivo o que comando ejecutas?
Me esta dando este error
no configuration file provided: not found

@NAZAuy
Copy link

NAZAuy commented Jan 31, 2022

@jonathanavalos
Los compose lo tenia en la misma carpeta "D:\DockerStore\docker-compose-wordpress.yaml"

@farkbarn-dev
Copy link

farkbarn-dev commented Feb 4, 2022

Para mapear mi directorio local de desarrollo con el directorio de ejecución del contenedor con wordpress sería así?
por que lo estoy intentando y no me sincroniza la carpeta quiero montar un directorio de un tema dentro del contenedor donde corre el wordpress, por favor me dan una mano con esto?
volumes:
- /home/farkbarn/Documentos/0_Docker/Wordpress/wp-content/themes/:/var/www/html/wp-content/themes/
#ESTO EN ESPECIFICO ES LO QUE QUIERO HACER, QUIERO PODER COMPARTIR
#MI DIRECTORIO LOCAL CON EL DIRECTORIO DEL CONTENEDOR DE WORDPRESS
#EN EL DIRECTORIO DE LOS TEMAS DEL CONTENEDOR DONDE CORRE WORDPRESS

@NAZAuy
Copy link

NAZAuy commented Feb 4, 2022

@farkbarn2 en principio lo veo bien, pero si tu cambias algo en esa carpeta no necesariamente se va a ver reflejado en la versión de trabajo, toma en cuenta que el wp maneja cache, estoy asumiendo que las rutas esta correctamente dirigidas y docker tiene permisos para ver tus archivos.
1º Prueba eliminar el cache de wp
2º prueba simplificar la ruta de emparejamiento con una ruta que no este dentro de tu perfil de usuario.

Saludos, espero haberte ayudado.

@farkbarn-dev
Copy link

@NAZAuy ok entonces por que no logro colocar el tema que está en mi carpeta personal dentro del contenedor mi WP el de el contenedor no aparece mi tema dentro de themes en el panel de administración de wordpress, mi intención es colocar el directorio donde tengo el tema desarrollado dentro del directorio themes de la instalación de wordpress que está en el contenedor, si me explico osea cuando acceso al panel administrativo de wordpress no veo el tema, por que? en que me estoy equivocando?

@NAZAuy
Copy link

NAZAuy commented Feb 4, 2022

Buen punto ese, por que si fuera un tema de ruta no deberías ver nada. Te fijaste que no sea la falta de permisos? Sea que el docker no tienen acceso a ese directorio y deshabilita el emparejamiento dejado la ruta original instancia. Hace una cosa carga un tema y fíjate donde aparece. entra por shell a la maquina virtual del docker y chequea en /var/www/html/wp-content/themes/ si te cargo ahí el tema.

@farkbarn-dev
Copy link

@NAZAuy si tengo permisos de lectura y escritura del directorio incluso hice una prueba dando permisos 777 osea permiso total y nada sigue sin montarme el directorio dentro de wp-content/themes del contenedor con wordpress, no tengo idea de cual será el problema :(

@NAZAuy
Copy link

NAZAuy commented Feb 5, 2022

@farkbarn2 publicata por acá el código que estas usando. Puede que el error este en otro lado.

@farkbarn-dev
Copy link

farkbarn-dev commented Feb 5, 2022

@NAZAuy este es el contenido de mi archivo docker-compose.yml
lo subí a drive y lo compartí para evitar que el uso de las lineas comentadas # haga mal la visualización por esta plataforma agradezco cualquier ayuda que me pueda servir de guía soy nuevo usando docker
https://drive.google.com/drive/folders/1jA2ED69plhRnEH2ipZmTp-rUDEFitunN?usp=sharing

@NAZAuy
Copy link

NAZAuy commented Feb 5, 2022

Yo lo crearía así. Crea el directorio "/DockerStore/wordpress/" y "/DockerStore/mysql/"
Hace tiempo ya que no creo docker-compose por que lo que he necesitado ya lo he encontrado de otros. Y al final termine contratando vps.

version: '2'

services:

  wordpress:
    depends_on:
      - mysql
    image: wordpress:php7.1-apache
    ports:
      - 8080:80
    restart: always
    environment:
      WORDPRESS_DB_HOST: mysql
      WORDPRESS_DB_USER: wordpress
      WORDPRESS_DB_PASSWORD: wordpress
      WORDPRESS_DB_NAME: wordpress
    volumes:
      - /DockerStore/wordpress:/var/www/html/wp-content
    links:
      - mysql:mysql

  mysql:
    image: mysql:8.0.13
    command: --default-authentication-plugin=mysql_native_password
    restart: always
#    ports:
#      - 8081:3306
    environment:
      MYSQL_DATABASE: wordpress
      MYSQL_ROOT_PASSWORD: wordpress
    volumes:
      - /DockerStore/mariadb:/var/lib/mysql

@farkbarn-dev
Copy link

farkbarn-dev commented Feb 6, 2022

@NAZAuy lo siento con tu configuración me da error para conectar la base de datos " Error establishing a database connection " pero voy a utilizar tu archivo para ver como estás montando los volumenes y ver si puedo montarlos de la misma manera en mi caso sería algo como

volumes:
   - /home/farkbarn/Documentos/0_Docker/Wordpress:/var/www/html/wp-content

voy a ver como me va intentando de esta manera te cuento cuando haya probado si me corre gracias por la ayuda

@NAZAuy
Copy link

NAZAuy commented Feb 6, 2022

toma en cuenta que te comente los puertos de mysql, asumo que te conectas a la base de dato, de no ser así deja lo puertos comentados. Hoy domingo voy andar libre pero en la PC, en esa te paso un discord y lo vemos.

@jhoanmartinez
Copy link

Debo usar docker compose o docker-compose?

@farkbarn-dev
Copy link

farkbarn-dev commented Feb 11, 2023 via email

@Krumitz97
Copy link

Hola, soy nuevo suscriptor, agradezco tus vídeos, una consulta como busco el archivo ini.php no lo encuentro, adicional en el directorio donde correo el archivo debería crearse me /var/www/html/wp-content estas adicional pero no ocurre, simplemente se crean pero no puedo acceder a la información de ello, gracias si pudiera ayudarme.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment