services: app: build: context: . dockerfile: .devcontainer/Dockerfile env_file: - .env working_dir: /workspace command: >- sh -lc "if [ ! -d node_modules ]; then npm install --no-fund --no-audit; fi && npm run dev" volumes: - .:/workspace:cached ports: - "${APP_PORT:-3000}:${APP_PORT:-3000}" depends_on: - db db: image: bitnami/mariadb:latest env_file: - .env environment: MARIADB_DATABASE: ${DB_NAME:-app_db} MARIADB_USER: ${DB_USER:-app_user} MARIADB_PASSWORD: ${DB_PASSWORD:-app_password} MARIADB_ROOT_PASSWORD: ${MARIADB_ROOT_PASSWORD:-root_password} ports: - "${DB_PORT:-3306}:3306" volumes: - mariadb_data:/bitnami/mariadb - ./docker/mariadb/init:/docker-entrypoint-initdb.d:ro phpmyadmin: image: phpmyadmin:5-apache depends_on: - db environment: PMA_HOST: db PMA_PORT: 3306 PMA_USER: ${DB_USER:-app_user} PMA_PASSWORD: ${DB_PASSWORD:-app_password} ports: - "${PHPMYADMIN_PORT:-8080}:80" volumes: mariadb_data: