Initial vault setup
This commit is contained in:
@@ -0,0 +1,134 @@
|
||||
---
|
||||
title: PeerTube
|
||||
created: 2026-06-07
|
||||
updated: 2026-06-07
|
||||
type: app
|
||||
tags: [catalogue, activitypub-fediverse, video, youtube, typescript, fediverse]
|
||||
confidence: high
|
||||
contested: false
|
||||
sources: [https://selfh.st/apps/?tag=activitypub-fediverse, https://github.com/Chocobozzz/PeerTube, https://joinpeertube.org/]
|
||||
---
|
||||
|
||||
# 🎬 PeerTube
|
||||
|
||||
> **La plateforme vidéo décentralisée et fédérée** : l'alternative à YouTube soutenue par la Framasoft, basée sur ActivityPub, BitTorrent et un réseau P2P pour alléger la bande passante.
|
||||
|
||||
| Métadonnée | Valeur |
|
||||
| :--- | :--- |
|
||||
| **Site web** | [https://joinpeertube.org](https://joinpeertube.org) |
|
||||
| **GitHub** | [https://github.com/Chocobozzz/PeerTube](https://github.com/Chocobozzz/PeerTube) |
|
||||
| **License** | AGPL-3.0 |
|
||||
| **Langage principal** | TypeScript, PostgreSQL |
|
||||
| **Étoiles GitHub** | 13 800 ⭐ |
|
||||
| **Dernière MAJ** | 2026-05 |
|
||||
| **Catégorie** | [[cat-activitypub-fediverse]] |
|
||||
|
||||
## Description
|
||||
|
||||
PeerTube est l'une des pièces maîtresses du Fediverse. C'est une **plateforme de publication vidéo** comparable à YouTube (chaîne, abonnements, likes, commentaires, monétisation, lives) mais **décentralisée** et **fédérée** : chaque instance héberge ses propres créateurs, et un compte Mastodon peut suivre une chaîne PeerTube, voir les vidéos dans son fil, et commenter.
|
||||
|
||||
L'innovation technique majeure est l'**architecture P2P** : quand une vidéo devient populaire, elle est servie par les autres pairs qui l'ont déjà regardée (intégration WebTorrent). Cela permet à de petites instances d'héberger des vidéos massives sans exploser la bande passante. L'instance reçoit les fragments manquants depuis les autres nœuds.
|
||||
|
||||
Fonctionnalités principales : **chaîne** avec miniatures et playlists, **sous-titres** WebVTT, **import/export de vidéos** (.mp4, .webm), **transcodage** H.264/H.265 configurable, **lives RTMP/HLS**, **commentaires fedérés**, **historique de visionnage**, **filtres**, **thèmes**, **OAuth2 pour clients tiers** (clients Android comme **Tubular**, **PeerTube for Android**).
|
||||
|
||||
**Points forts** : mature (depuis 2018), plus de 1 800 instances publiques, Framasoft derrière le développement, pas d'algorithme de classement, pas de publicité, support natif de l'import.
|
||||
|
||||
**Points faibles** : **RAM et stockage** importants (transcodage = 2-4 Go RAM, 100-500 Go de stockage selon usage), pas d'application iOS officielle, transcodage long pour les vidéos > 1 h, et la monétisation reste embryonnaire (plugin Tipeee / OpenCollective).
|
||||
|
||||
## Installation
|
||||
|
||||
### Via Docker (recommandé)
|
||||
|
||||
L'image officielle est `chocobozzz/peertube` sur Docker Hub. La stack typique inclut PostgreSQL, Redis et un serveur de fichiers.
|
||||
|
||||
```yaml
|
||||
# docker-compose.yml
|
||||
services:
|
||||
peertube:
|
||||
image: chocobozzz/peertube:v7
|
||||
restart: unless-stopped
|
||||
env_file: .env
|
||||
volumes:
|
||||
- peertube_data:/data
|
||||
- peertube_config:/config
|
||||
- ./docker/nginx:/etc/nginx/conf.d
|
||||
ports:
|
||||
- "9000:9000"
|
||||
depends_on:
|
||||
- postgres
|
||||
- redis
|
||||
|
||||
postgres:
|
||||
image: postgres:16-alpine
|
||||
restart: unless-stopped
|
||||
environment:
|
||||
POSTGRES_USER: peertube
|
||||
POSTGRES_PASSWORD: change-me
|
||||
POSTGRES_DB: peertube
|
||||
volumes:
|
||||
- peertube_db:/var/lib/postgresql/data
|
||||
|
||||
redis:
|
||||
image: redis:7-alpine
|
||||
restart: unless-stopped
|
||||
volumes:
|
||||
- peertube_redis:/data
|
||||
|
||||
volumes:
|
||||
peertube_data:
|
||||
peertube_config:
|
||||
peertube_db:
|
||||
peertube_redis:
|
||||
```
|
||||
|
||||
### Installation manuelle
|
||||
|
||||
Voir la doc officielle : `https://docs.joinpeertube.org/install-anywhere`. Prévoir Node.js 20+, PostgreSQL 14+, Redis 7+, FFMPEG avec codecs H.264/H.265, Yarn, et un reverse-proxy HTTPS (Caddy ou Nginx).
|
||||
|
||||
## Configuration
|
||||
|
||||
1. Copier `docker-compose.yaml` officiel et `.env` depuis le dépôt.
|
||||
2. Régénérer les secrets (`peertube --help` pour `secret`).
|
||||
3. Compléter `PEERTUBE_HOSTNAME`, `PEERTUBE_WEBSERVER.*`, SMTP.
|
||||
4. Démarrer la stack, créer le compte admin via l'interface web.
|
||||
5. **Configurer le reverse-proxy HTTPS** (Caddy est le plus simple) en important le template officiel.
|
||||
6. Activer la federation : par défaut activée, vérifier `federation.enabled` et les ports 443 ouverts.
|
||||
|
||||
## Alternatives
|
||||
|
||||
### Open source
|
||||
- **Odysee / LBRY** — Vidéo sur blockchain (OP_RETURN), pas ActivityPub
|
||||
- [[app-jellyfin]] — Streaming média, pas de partage social
|
||||
- **Owncast** — Live vidéo self-hosted, pas de VOD fedérée
|
||||
- **TILVids** — Plateforme d'instances PeerTube hébergées
|
||||
- [[app-mastodon]] — Pour la promotion croisée des vidéos
|
||||
|
||||
### Propriétaires
|
||||
- **YouTube** — L'original, adossé à Google
|
||||
- **Twitch** — Live principal, non self-hostable
|
||||
- **Vimeo** — Freemium orienté pro
|
||||
|
||||
## Sécurité
|
||||
|
||||
- ✅ **Authentification** : email + mot de passe, 2FA TOTP, OAuth2 (applications)
|
||||
- ✅ **HTTPS** obligatoire (HSTS)
|
||||
- ✅ **Modération** : signalements, blocage de comptes et d'instances, anti-spam
|
||||
- ✅ **Pluggable** : les plugins peuvent ajouter anti-flood, captcha, etc.
|
||||
- ⚠️ **Stockage** : taille max par vidéo paramétrable, attention au quota disque
|
||||
- ⚠️ **Transcodage** : processus lourd, isoler en worker dédié pour les grosses instances
|
||||
- ⚠️ **P2P** : WebRTC expose l'IP de l'instance, bien configurer `trust_proxy`
|
||||
|
||||
## Ressources
|
||||
|
||||
- [Site officiel](https://joinpeertube.org)
|
||||
- [Documentation](https://docs.joinpeertube.org)
|
||||
- [GitHub Chocobozzz/PeerTube](https://github.com/Chocobozzz/PeerTube)
|
||||
- [Framasoft — hébergement d'instances](https://framasoft.org)
|
||||
|
||||
## Pages Liées
|
||||
|
||||
- [[cat-activitypub-fediverse]] — Catégorie parente
|
||||
- [[app-mastodon]] — Federation entre vidéo et microblogage
|
||||
- [[app-jellyfin]] — Pour une médiathèque locale complémentaire
|
||||
- [[app-caddy]] — Reverse-proxy HTTPS recommandé
|
||||
- [[recettes-docker-compose]] — Templates Docker
|
||||
Reference in New Issue
Block a user