2024-10-10 11:48:32 +00:00
# documentation: https://docs.nextcloud.com
# slogan: NextCloud is a self-hosted, open-source platform that provides file storage, collaboration, and communication tools for seamless data management.
2025-08-17 16:23:57 +00:00
# category: storage
2024-10-10 11:48:32 +00:00
# tags: cloud, collaboration, communication, filestorage, data
# logo: svgs/nextcloud.svg
# port: 80
services :
nextcloud :
image : lscr.io/linuxserver/nextcloud:latest
environment :
2025-08-10 08:10:22 +00:00
- SERVICE_URL_NEXTCLOUD_80
2024-10-10 11:48:32 +00:00
- PUID=1000
- PGID=1000
- TZ=${TZ:-Europe/Paris}
- MYSQL_DATABASE=${MARIADB_DATABASE:-nextcloud}
- MYSQL_USER=${SERVICE_USER_MARIADB}
- MYSQL_PASSWORD=${SERVICE_PASSWORD_MARIADB}
- MYSQL_HOST=nextcloud-db
- REDIS_HOST=redis
- REDIS_PORT=6379
volumes :
- nextcloud-config:/config
- nextcloud-data:/data
depends_on :
nextcloud-db :
condition : service_healthy
redis :
condition : service_healthy
healthcheck :
test : [ "CMD" , "curl" , "-f" , "http://127.0.0.1:80" ]
interval : 2s
timeout : 10s
retries : 15
nextcloud-db :
image : mariadb:11
volumes :
- nextcloud-mariadb-data:/var/lib/mysql
environment :
- MYSQL_ROOT_PASSWORD=${SERVICE_PASSWORD_ROOT}
- MYSQL_DATABASE=${MARIADB_DATABASE:-nextcloud}
- MYSQL_USER=${SERVICE_USER_MARIADB}
- MYSQL_PASSWORD=${SERVICE_PASSWORD_MARIADB}
healthcheck :
test : [ "CMD" , "healthcheck.sh" , "--connect" , "--innodb_initialized" ]
interval : 5s
timeout : 20s
retries : 10
redis :
image : "redis:7.4-alpine"
volumes :
- "nextcloud-redis-data:/data"
healthcheck :
test :
- CMD
- redis-cli
- PING
interval : 5s
timeout : 10s
retries : 20