version: '3.8' services: php: build: context: . dockerfile: Dockerfile container_name: php_app ports: - "8080:80" volumes: - ./src:/var/www/html - ./config/nginx/default.conf:/etc/nginx/conf.d/default.conf depends_on: - mariadb networks: - app-network mariadb: image: mariadb:11.5 container_name: mariadb_db restart: unless-stopped environment: MYSQL_ROOT_PASSWORD: root_password MYSQL_DATABASE: app_database MYSQL_USER: app_user MYSQL_PASSWORD: app_password ports: - "3307:3306" volumes: - mariadb_data:/var/lib/mysql - ./init.sql:/docker-entrypoint-initdb.d/init.sql networks: - app-network phpmyadmin: image: phpmyadmin:latest container_name: phpmyadmin restart: unless-stopped environment: PMA_HOST: mariadb PMA_PORT: 3306 MYSQL_ROOT_PASSWORD: root_password ports: - "8081:80" depends_on: - mariadb networks: - app-network networks: app-network: driver: bridge volumes: mariadb_data: driver: local