services: mariadb: container_name: Nextcloud-DB image: mariadb:11.4-noble #LTS Long Time Support Until May 29, 2029. security_opt: - no-new-privileges:false command: - "--transaction-isolation=READ-COMMITTED" - "--binlog-format=ROW" - "--innodb-read-only-compressed=OFF" - "--skip-name-resolve" - "--innodb_buffer_pool_size=128M" - "--innodb_buffer_pool_instances=1" - "--innodb_flush_log_at_trx_commit=2" - "--innodb_log_file_size=32M" - "--innodb_max_dirty_pages_pct=90" - "--query_cache_type=1" - "--query_cache_size=64M" - "--query_cache_limit=2M" - "--query_cache_min_res_unit=2K" - "--tmp_table_size=64M" - "--max_heap_table_size=64M" - "--key_buffer_size=16M" - "--thread_cache_size=16" - "--slow_query_log=1" - "--slow_query_log_file=/var/log/mysql/slow.log" - "--long_query_time=1" - "--default-character-set=utf8mb4" - "--character_set_server=utf8mb4" - "--collation_server=utf8mb4_general_ci" - "--innodb_large_prefix=on" - "--innodb_file_format=barracuda" - "--innodb_file_per_table=1" expose: - 3306 volumes: - /var/lib/docker/volumes/nextcloud/db:/var/lib/mysql:rw - /var/lib/docker/volumes/nextcloud/db:/etc/mysql/conf.d:rw environment: - MYSQL_ROOT_PASSWORD=C@ptn&mo - MYSQL_PASSWORD=C@ptn&mo - MYSQL_DATABASE=nextcloud - MYSQL_USER=nextcloud - TZ=Europe/Paris restart: always redis: image: redis container_name: Nextcloud-REDIS hostname: nextcloudredis healthcheck: test: ["CMD-SHELL", "redis-cli ping || exit 1"] volumes: - /var/lib/docker/volumes/nextcloud/redis:/data:rw environment: TZ: Europe/Paris restart: always nextcloud: container_name: Nextcloud ports: - 8082:80 depends_on: mariadb: condition: service_started redis: condition: service_healthy environment: - REDIS_HOST=nextcloudredis - NEXTCLOUD_ADMIN_USER=thedarty - NEXTCLOUD_ADMIN_PASSWORD=St&ph@ne10Nove.@1976 - NEXTCLOUD_TRUSTED_DOMAINS=nextcloud.maison nextcloud.sda.zone dartydisk6.maison - TRUSTED_PROXIES=dartydisk6.maison - OVERWRITEHOST=nextcloud.maison - OVERWRITEPROTOCOL=https - MYSQL_PASSWORD=C@ptn&mo - MYSQL_DATABASE=nextcloud - MYSQL_USER=nextcloud - MYSQL_HOST=mariadb healthcheck: test: curl -f http://localhost:80/ || exit 1 volumes: - /var/lib/docker/volumes/nextcloud/html:/var/www/html:rw - /var/lib/docker/volumes/nextcloud/custom_apps:/var/www/html/custom_apps:rw - /var/lib/docker/volumes/nextcloud/config:/var/www/html/config:rw - /var/lib/docker/volumes/nextcloud/data:/var/www/html/data:rw - /var/lib/docker/volumes/nextcloud/themes:/var/www/html/themes:rw image: nextcloud restart: always cron: image: nextcloud:apache container_name: Nextcloud-CRON restart: always volumes: - /var/lib/docker/volumes/nextcloud/config:/var/www/html/config:rw - /var/lib/docker/volumes/nextcloud/html:/var/www/html:rw - /var/lib/docker/volumes/nextcloud/custom_apps:/var/www/html/custom_apps:rw - /var/lib/docker/volumes/nextcloud/data:/var/www/html/data:rw entrypoint: /cron.sh depends_on: mariadb: condition: service_started redis: condition: service_started