version: "3.9" services: db: image: mariadb:11 restart: unless-stopped command: --transaction-isolation=READ-COMMITTED --binlog-format=ROW volumes: - ./db:/var/lib/mysql environment: - MYSQL_ROOT_PASSWORD=${MYSQL_ROOT_PASSWORD} - MYSQL_PASSWORD=${MYSQL_PASSWORD} - MYSQL_DATABASE=${MYSQL_DATABASE} - MYSQL_USER=${MYSQL_USER} redis: image: redis:alpine restart: unless-stopped volumes: - ./redis:/data app: image: nextcloud restart: unless-stopped ports: - 8080:80 volumes: - ./app:/var/www/html environment: - MYSQL_PASSWORD=${MYSQL_PASSWORD} - MYSQL_DATABASE=${MYSQL_DATABASE} - MYSQL_USER=${MYSQL_USER} - MYSQL_HOST=db - REDIS_HOST=redis depends_on: - db - redis MYSQL_ROOT_PASSWORD=example_root_password MYSQL_PASSWORD=example_password MYSQL_DATABASE=nextcloud MYSQL_USER=nextcloud