services: mysql: image: mysql:8.0 container_name: mail-mysql restart: unless-stopped environment: MYSQL_ROOT_PASSWORD: root123 MYSQL_DATABASE: mail_server MYSQL_USER: mail_user MYSQL_PASSWORD: user123 ports: - "3308:3306" volumes: - mysql-data:/var/lib/mysql - ./scripts/create_all_tables.sql:/docker-entrypoint-initdb.d/init.sql command: --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci --default-authentication-plugin=mysql_native_password healthcheck: test: ["CMD", "mysqladmin", "ping", "-h", "localhost", "-u", "root", "-proot123"] interval: 5s timeout: 3s retries: 10 phpmyadmin: image: phpmyadmin/phpmyadmin container_name: mail-phpmyadmin restart: unless-stopped environment: PMA_HOST: mysql PMA_PORT: 3306 PMA_USER: root PMA_PASSWORD: root123 UPLOAD_LIMIT: 64M ports: - "8088:80" depends_on: mysql: condition: service_healthy volumes: mysql-data: