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

95 lines
3.2 KiB
Markdown

---
title: Discourse
created: 2026-06-08
updated: 2026-06-08
type: app
tags: [catalogue, forums, ruby, rails, postgres, self-hosted, app-marathon3-batch-a]
confidence: high
contested: false
sources: [https://selfh.st/apps/?tag=Forums, https://www.discourse.org/]
---
# 💬 Discourse
> La plateforme de forums moderne et open source, conçue pour les discussions de longue durée.
## 📋 Informations Générales
| Champ | Valeur |
| :--- | :--- |
| **Site web** | [discourse.org](https://www.discourse.org/) |
| **GitHub** | [discourse/discourse](https://github.com/discourse/discourse) |
| **License** | GPL-2.0 |
| **Langage** | Ruby on Rails |
| **Étoiles GitHub** | 45k ⭐ |
| **Catégorie** | [[cat-forums|Forums]] |
## 📝 Description
**Discourse** est une plateforme de forum **nouvelle génération** créée par Jeff Atwood (Stack Overflow). Pensée pour des discussions de qualité : pas de pagination, threading infini, trust levels, modération collaborative, notifications temps réel, SSO/OAuth2 complet. C'est la **référence moderne** des forums auto-hébergés.
**Différence vs Flarum** : Discourse est plus lourd mais offre des fonctionnalités enterprise (plugins, modération avancée, IA, search sémantique). Flarum est plus léger et moderne visuellement, mais plus limité fonctionnellement.
**Pour qui** : communautés tech, projets open source, associations, support client — toute communauté qui veut une discussion structurée et durable.
## 🚀 Installation
### Docker (officiel discourse/discourse_docker)
```bash
git clone https://github.com/discourse/discourse_docker.git /var/discourse
cd /var/discourse
./discourse-setup
```
### Docker Compose
```yaml
version: '3.8'
services:
discourse:
image: discourse/discourse:3.2
container_name: discourse
restart: unless-stopped
ports:
- "8080:80"
volumes:
- ./data:/shared
- ./config/discourse.conf:/etc/discourse.conf
environment:
- DISCOURSE_HOSTNAME=forum.example.com
- DISCOURSE_DEVELOPER_EMAILS=admin@example.com
labels:
traefik.enable: "true"
traefik.http.routers.discourse.rule: "Host(`forum.example.com`)"
traefik.http.routers.discourse.tls.certresolver: letsencrypt
```
## 🔄 Alternatives
### Open Source
- [[app-flarum]] — Forum PHP moderne, plus léger
- [[app-apache-answer]] — Forum Q&A type Stack Overflow
- [[app-storyden]] — Forum communautaire moderne (Go+React)
### Propriétaires
- **Discourse.org Cloud** — Hosting officiel managé
- **Circle / Mighty Networks** — Communautés payantes clé en main
## 🔐 Sécurité
- **SSO/OAuth2** : intégration Google, GitHub, Discord, Authentik
- **Trust levels** : 5 niveaux (0-4) basés sur l'engagement, limitent les actions des nouveaux
- **Rate limiting** : posts, recherches, login
- **2FA** : TOTP natif
- **Modération IA** : flag automatique de spam, GPT anti-toxicité (plugin)
## 📚 Ressources
- [Documentation Discourse](https://meta.discourse.org/)
- [Admin Quick Start](https://discuss-tutorial.discourse.org/)
- [Plugins Discourse](https://www.discoursehub.com/)
## Pages Liées
- [[cat-forums]] — Catégorie Forums
- [[app-flarum]] — Alternative PHP plus légère
- [[recettes-docker-compose]] — Templates Docker