version: '3' networks: app: driver: bridge services: app: build: context: ./docker/app args: WWW_USER: '${WWW_USER}' WWW_GROUP: '${WWW_GROUP}' networks: - app volumes: - '.:/var/www' user: '${WWW_USER}' nginx: build: context: ./docker/nginx ports: - ${APP_PORT:-80}:80 networks: - app volumes: - './public:/var/www/public' mailhog: image: 'mailhog/mailhog:latest' ports: - '${FORWARD_MAILHOG_PORT:-1025}:1025' - '${FORWARD_MAILHOG_DASHBOARD_PORT:-8025}:8025' networks: - app mysql: image: 'mysql:8.0' environment: MYSQL_ROOT_PASSWORD: '${DB_PASSWORD}' MYSQL_DATABASE: '${DB_DATABASE}' MYSQL_USER: '${DB_USERNAME}' MYSQL_PASSWORD: '${DB_PASSWORD}' MYSQL_ALLOW_EMPTY_PASSWORD: 'yes' networks: - app ports: - '${FORWARD_MYSQL_PORT:-3306}:3306'