enable xdebug php docker-compose code example
Example: how to run xdebug on docker compose
version: '3.8'
services:
wordpress:
container_name: wordpress-wpd
restart: always
image: wpdiaries/wordpress-xdebug:5.7.1-php8.0-apache
ports:
- "80:80"
environment:
VIRTUAL_HOST: mydomain.com, www.mydomain.com
WORDPRESS_DB_HOST: db
WORDPRESS_DB_NAME: mydbname
WORDPRESS_DB_USER: mydbuser
WORDPRESS_DB_PASSWORD: mydbpassword
# Set the XDEBUG_CONFIG as described here: https://xdebug.org/docs/remote
XDEBUG_CONFIG: remote_host=192.168.1.2 # change 192.168.1.2 to the IP of your host machine
depends_on:
- db
volumes:
- /opt/projects/wpd/www:/var/www/html
networks:
- backend-wpd
- frontend-wpd
db:
container_name: mysql-wpd
image: mysql:8.0.20
command: --default-authentication-plugin=mysql_native_password
restart: always
environment:
MYSQL_ROOT_PASSWORD: mydbrootpassword
#MYSQL_RANDOM_ROOT_PASSWORD: '1' # You can use this instead of the option right above if you do not want to be able to login to MySQL under root
MYSQL_DATABASE: mydbname
MYSQL_USER: mydbuser
MYSQL_PASSWORD: mydbpassword
ports:
- "3306:3306" # I prefer to keep the ports available for external connections in the development environment to be able to work with the database
# from programs like e.g. HeidiSQL on Windows or DBeaver on Mac.
volumes:
- /opt/projects/wpd/mysql:/var/lib/mysql
networks:
- backend-wpd
networks:
frontend-wpd:
backend-wpd: