version: '3.9' services: web: build: context: . dockerfile: Dockerfile container_name: alwisp_web ports: - "80:80" - "443:443" volumes: - ./www:/var/www/html - ./docker/apache/000-default.conf:/etc/apache2/sites-available/000-default.conf - ./docker/apache/ssl:/etc/apache2/ssl environment: - DB_HOST=db - DB_NAME=${DB_NAME} - DB_USER=${DB_USER} - DB_PASS=${DB_PASS} - ADMIN_PASS=${ADMIN_PASS} depends_on: - db networks: - alwisp_net restart: unless-stopped db: image: mysql:8.0 container_name: alwisp_db environment: MYSQL_ROOT_PASSWORD: ${DB_ROOT_PASS} MYSQL_DATABASE: ${DB_NAME} MYSQL_USER: ${DB_USER} MYSQL_PASSWORD: ${DB_PASS} volumes: - db_data:/var/lib/mysql - ./docker/mysql/init.sql:/docker-entrypoint-initdb.d/init.sql networks: - alwisp_net restart: unless-stopped phpmyadmin: image: phpmyadmin:latest container_name: alwisp_pma ports: - "8080:80" environment: PMA_HOST: db PMA_USER: ${DB_USER} PMA_PASSWORD: ${DB_PASS} depends_on: - db networks: - alwisp_net restart: unless-stopped profiles: - tools volumes: db_data: networks: alwisp_net: driver: bridge