Initial vault setup

This commit is contained in:
2026-06-09 18:40:21 +02:00
commit bda02d587f
3692 changed files with 402457 additions and 0 deletions
+169
View File
@@ -0,0 +1,169 @@
---
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](https://nextcloud.com/) |
| **GitHub** | [nextcloud/server](https://github.com/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é)
```yaml
# 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)
```bash
# 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
- [[app-owncloud]] — L'ancêtre, désormais orienté entreprise
- [[app-owncloud-infinite-scale]] — Refonte Go du même éditeur
- [[app-seafile]] — Sync rapide, modèle « library » pour équipes
- [[app-cloudreve]] — Moderne et léger (Go), axé storage pur
- [[app-opencloud]] — Fork communautaire de OCIS
- [[app-oxicloud]] — Alternative récente en Rust
- [[app-sync-in]] — Plus modeste, en Node.js
- **FileCloud Community** — Fork open core d'ownCloud
- **Pydio Cells** — Plateforme française orientée pro
### 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
- [Site officiel](https://nextcloud.com/)
- [Documentation admin](https://docs.nextcloud.com/server/latest/admin_manual/)
- [GitHub nextcloud/server](https://github.com/nextcloud/server)
- [Apps marketplace](https://apps.nextcloud.com/)
- [Forum communauté](https://help.nextcloud.com/)
- [Nextcloud Hub 7 announcement](https://nextcloud.com/blog/)
## Pages Liées
- [[cat-cloud-storage]] — Catégorie Cloud Storage
- [[recettes-docker-compose]] — Templates Docker
- [[app-owncloud]] — L'ancêtre direct
- [[app-owncloud-infinite-scale]] — Refonte Go
- [[securisation-home-lab]] — Sécurité
- [[Catalogue-Self-Hosted]] — Hub