services: app: build: context: . dockerfile: Dockerfile ports: - "${PORT}:${PORT}" env_file: - .env volumes: - app-public:/user/src/app/public - app-logs:/user/src/app/logs depends_on: - mariadb - redis restart: unless-stopped networks: - app-network mariadb: image: mariadb:lts environment: - MARIADB_USER=${DB_USER} - MARIADB_PASSWORD=${DB_PASS} - MARIADB_DATABASE=${DB_NAME} - MARIADB_RANDOM_ROOT_PASSWORD=yes volumes: - mariadb-data:/var/lib/mysql ports: - "${DB_PORT}:3306" restart: unless-stopped networks: - app-network command: ['mariadbd', '--character-set-server=utf8mb4', '--collation-server=utf8mb4_unicode_ci'] redis: image: redis:7.4.2-alpine command: redis-server --appendonly yes volumes: - redis-data:/data ports: - "6379:6379" restart: unless-stopped networks: - app-network networks: app-network: driver: bridge volumes: app-public: app-logs: mariadb-data: redis-data: