version: '3.4'

services:
  php-nginx:
    container_name: php-container
    image: jianboy/php:8
    build:
      context: .
      dockerfile: ./Dockerfile
    restart: unless-stopped
    volumes:
      - ./src:/var/www/html
      # - ./apache/:/etc/apache2/sites-enabled/
    ports:
      - 9000:9000
    networks:
      - app-network
    depends_on:
      - mysql
      - redis
  
  phpmyadmin:
    image: phpmyadmin/phpmyadmin:5.2.1-fpm-alpine
    ports:
        - '8080:80'
    restart: always
    environment:
        PMA_HOST: mysql
    depends_on:
        - mysql

  mysql:
    container_name: mysql-container
    image: mysql:8.0
    restart: unless-stopped
    volumes:
      - ./mysql:/var/lib/mysql
    environment:
      MYSQL_DATABASE: laravel
      MYSQL_USER: laravel
      MYSQL_PASSWORD: laravel
      MYSQL_ROOT_PASSWORD: laravel
    ports:
      - 3306:3306
    networks:
      - app-network
  
  redis:
    container_name: redis-container
    image: redis:6.0
    restart: unless-stopped
    volumes:
      - ./redis:/data
    ports:
      - 6379:6379
    networks:
      - app-network
  
  volumes:
    mysql:
    redis:
  
  networks:
    app-network:
      driver: bridge