Files
2026-06-09 18:40:21 +02:00

7.4 KiB


title: Nextcloud created: 2026-06-07 updated: 2026-06-07 type: app tags: [catalogue, cloud-storage, php, productivity, file-sync, calendar, contacts, office, collaboration] confidence: high contested: false sources: [https://selfh.st/apps/?tag=Self-hosted+Cloud, https://github.com/nextcloud/server]

☁️ Nextcloud

La suite collaborative open source de référence : cloud personnel, partage de fichiers, calendrier, contacts, visioconférence, bureautique en ligne et plus de 200 applications tierces, conçue comme une alternative complète à Google Workspace et Microsoft 365.

📋 Informations Générales

Métadonnée Valeur
Site web nextcloud.com
GitHub nextcloud/server
License AGPL-3.0
Langage PHP (backend), JavaScript (frontend)
Étoiles 31 200
Dernière MAJ 2026-05-28
Catégorie cat-cloud-storage

📝 Description

Nextcloud est de loin le projet de cloud personnel open source le plus mature et le plus utilisé au monde. Né en 2016 d'un fork d'ownCloud suite à des dissensions internes, il fédère aujourd'hui une communauté de plus de mille contributeurs et un écosystème applicatif gigantesque. Sa promesse est simple : offrir une suite collaborative auto-hébergeable qui remplace Dropbox pour les fichiers, Google Calendar pour l'agenda, Gmail pour les contacts, Google Docs pour la bureautique, et même Teams ou Zoom pour la visio.

L'application core, appelée « Nextcloud Server », gère l'authentification, le stockage, le partage, la synchronisation multi-device (via clients desktop et mobile natifs) et expose une marketplace d'apps officielles (Nextcloud Office pour Collabora, Nextcloud Talk pour la messagerie instantanée, Nextcloud Mail, Nextcloud Deck pour la gestion de projets type Trello, etc.). Cette modularité est à la fois sa plus grande force et sa principale complexité : il faut bien dimensionner PHP-FPM, Redis et la base de données pour absorber la charge.

Sur le plan technique, Nextcloud tourne sur PHP 8.1+ avec une base PostgreSQL ou MySQL/MariaDB, nécessite un reverse-proxy (Apache ou Nginx) et supporte un cache distribué via Redis pour les sessions et le file locking. Les images Docker officielles (nextcloud:stable et nextcloud:fpm) sont largement éprouvées et constituent la voie d'installation la plus rapide. Les exigences matérielles restent modestes pour un usage familial (2 vCPU, 2 Go de RAM suffisent pour 5 utilisateurs) mais peuvent grimper sensiblement pour un déploiement PME avec chiffrement E2E activé.

🚀 Installation

Option 1 : Docker Compose (recommandé)

# docker-compose.yml
version: '3.8'

services:
  db:
    image: mariadb:11
    container_name: nextcloud-db
    restart: unless-stopped
    volumes:
      - db_data:/var/lib/mysql
    environment:
      MYSQL_ROOT_PASSWORD: ${DB_ROOT_PASS}
      MYSQL_DATABASE: nextcloud
      MYSQL_USER: nextcloud
      MYSQL_PASSWORD: ${DB_PASS}
    env_file:
      - .env

  redis:
    image: redis:7-alpine
    container_name: nextcloud-redis
    restart: unless-stopped
    command: redis-server --requirepass ${REDIS_PASS}

  app:
    image: nextcloud:28-apache
    container_name: nextcloud-app
    restart: unless-stopped
    depends_on:
      - db
      - redis
    ports:
      - "8080:80"
    volumes:
      - nextcloud_data:/var/www/html
      - ./apps:/var/www/html/custom_apps
      - ./config:/var/www/html/config
      - ./data:/var/www/html/data
    environment:
      POSTGRES_HOST: db
      MYSQL_HOST: db
      REDIS_HOST: redis
      REDIS_HOST_PASSWORD: ${REDIS_PASS}
      NEXTCLOUD_TRUSTED_DOMAINS: "cloud.example.com"
      TRUSTED_CACERTS_DIR: /etc/ssl/certs
    env_file:
      - .env

volumes:
  db_data:
  nextcloud_data:

Option 2 : Installation manuelle (LAMP/LEMP)

# Debian/Ubuntu
sudo apt install apache2 mariadb-server libapache2-mod-php \
  php-gd php-json php-mysql php-curl php-mbstring php-intl \
  php-imagick php-xml php-zip php-bcmath php-gmp php-redis
sudo systemctl enable --now apache2 mariadb

# Télécharger l'archive
wget https://download.nextcloud.com/server/releases/latest-28.tar.bz2
sudo tar -xjf latest-28.tar.bz2 -C /var/www/
sudo chown -R www-data:www-data /var/www/nextcloud

# Créer la base
sudo mysql -e "CREATE DATABASE nextcloud;
  CREATE USER 'nextcloud'@'localhost' IDENTIFIED BY 'secret';
  GRANT ALL ON nextcloud.* TO 'nextcloud'@'localhost';"

# Lancer l'installateur web sur https://cloud.example.com

⚙️ Configuration

  • File locking : indispensable en multi-utilisateurs, activé via Redis ('filelocking.enabled' => true).
  • Trusted domains : déclarez tous les FQDN d'accès dans config.php ('trusted_domains').
  • Maintenance window : occ maintenance:install --admin-user admin puis occ config:system:set defaultappregion --value=fr.
  • Apps activées : depuis l'UI admin, ajoutez Nextcloud Office (intégration Collabora), Talk, Mail, Deck, Calendar, Contacts.
  • Cron : privilégier le cron système (sudo crontab -u www-data -l) plutôt que le AJAX cron pour les performances.
  • Quota : paramétrable par utilisateur ou groupe depuis l'interface d'administration.

🔄 Alternatives

Open Source

Propriétaires (ce que cette app remplace)

  • Google Drive + Workspace — partage, docs, agenda, contacts
  • Microsoft OneDrive + 365 — l'écosystème complet
  • Dropbox Business — sync et partage
  • Box — collaboration entreprise

🔐 Sécurité

  • Mises à jour fréquentes : un cycle de release mineure toutes les 4 à 6 semaines, suivez le canal stable.
  • 2FA : activable globalement via l'app officielle « Two-Factor TOTP Provider » (compatible app-2fauth côté client).
  • End-to-End Encryption : l'app E2EE chiffre les fichiers côté client ; attention, elle désactive alors la prévisualisation et la recherche côté serveur.
  • Brute-force protection : protection native via fail2ban (logs dans nextcloud.log).
  • Hardening : occ security:routes liste les routes à protéger ; forcez HTTPS, ajoutez les headers HSTS via le reverse-proxy.
  • Audit : activez l'app « Auditing » et exportez vers votre SIEM (cat-monitoring).

📚 Ressources

Pages Liées