Tengo una configuración de VPS con debian 10 y busco agregar varios sitios de wqordpress usando docker compose. Estoy usando nginx y letsencrypt en contenedores separados... y esa parte parece estar funcionando. Obtengo el SSL y puedo hacer ping al sitio, aunque WP no se conectará a la base de datos y tengo la sensación de que me estoy perdiendo algo simple... Soy un novato con Docker y Compose
aquí está mi archivo docker-compose.yml
version: "3" services: db_domain: image: mysql:5.7 volumes: - db_data:/var/lib/mysql restart: always environment: MYSQL_ROOT_PASSWORD: Password1234 MYSQL_DATABASE: domain-db MYSQL_USER: domainUser MYSQL_PASSWORD: otherPassword1234 container_name: domain-db wordpress: depends_on: - db_domain image: wordpress:latest expose: - 80 restart: always environment: VIRTUAL_HOST: domain.com LETSENCRYPT_HOST: domain.com LETSENCRYPT_EMAIL: admin@domain.com WORDPRESS_DB_HOST: db_domain:3306 WORDPRESS_DB_USER: domainUser WORDPRESS_DB_PASSWORD: otherPassword1234 container_name: domain-wp volumes: db_data: networks: default: external: name: nginx-proxyTiene un par de problemas: las variables de entorno para el servicio Mysql no están configuradas correctamente y al servicio de Wordpress le falta la variable de entorno WORDPRESS_DB_NAME: domain-db. Aquí hay una configuración que aparece sin errores de base de datos:
version: "3" services: db_domain: image: mysql:5.7 volumes: - db_data:/var/lib/mysql restart: always environment: - MYSQL_ROOT_PASSWORD=Password1234 - MYSQL_DATABASE=domain-db - MYSQL_USER=domainUser - MYSQL_PASSWORD=otherPassword1234 container_name: domain-db ports: - "3306:3306" wordpress: depends_on: - db_domain image: wordpress:latest expose: - 80 restart: always environment: VIRTUAL_HOST: domain.com LETSENCRYPT_HOST: domain.com LETSENCRYPT_EMAIL: admin@domain.com WORDPRESS_DB_HOST: db_domain:3306 WORDPRESS_DB_USER: domainUser WORDPRESS_DB_PASSWORD: otherPassword1234 WORDPRESS_DB_NAME: domain-db container_name: domain-wp volumes: db_data:Tienes que agregar este WORDPRESS_DB_NAME: domain-db .
Y WORDPRESS_DB_PASSWORD debe ser igual a MYSQL_PASSWORD.
De todos modos, RTFM -> https://hub.docker.com/_/wordpress/
Saludos.