services: # Database Service (MariaDB tương thích với cấu hình máy chủ hiện tại) db: image: mariadb:10.5 container_name: wp_mariadb restart: always environment: MYSQL_ROOT_PASSWORD: root_password_123 MYSQL_DATABASE: wordpress MYSQL_USER: wp_user MYSQL_PASSWORD: wp_password MYSQL_INITDB_SKIP_TZINFO: 1 volumes: - db_data:/var/lib/mysql # WordPress Service (PHP 7.4 + WP 5.7) wordpress: image: wordpress:5.7-php7.4-apache container_name: wordpress_app restart: always ports: - "8082:80" # Cổng truy cập 8082 environment: WORDPRESS_DB_HOST: db:3306 WORDPRESS_DB_USER: wp_user WORDPRESS_DB_PASSWORD: wp_password WORDPRESS_DB_NAME: wordpress volumes: # MAP RA MÁY THẬT: Thư mục ./html cùng cấp với docker-compose.yml - ./html:/var/www/html depends_on: - db # phpMyAdmin Service (Quản lý CSDL trực quan) phpmyadmin: image: phpmyadmin/phpmyadmin container_name: wp_phpmyadmin restart: always ports: - "8081:80" # Truy cập phpMyAdmin qua cổng 8081 environment: PMA_HOST: db MYSQL_ROOT_PASSWORD: root_password_123 depends_on: - db volumes: db_data: # Bỏ wp_data ở đây vì đã dùng bind mount ./html