docker/TODO.md
2026-01-19 12:51:18 +00:00

79 lines
No EOL
3.6 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

- geeftlist
- kresus
- [libretranslate](https://blog.gcn.sh/howtos/installing-libretranslate-using-docker-and-ubuntu)
- [RustDesk](https://github.com/rustdesk/rustdesk-server/blob/master/docker-compose.yml)
- [Jellyfin](https://jellyfin.org/docs/general/installation/container/)
- [Graphhopper](https://github.com/IsraelHikingMap/graphhopper-docker)
- [Filesharing](https://github.com/axeloz/filesharing)
- [Immich](https://immich.app/)
- [HappyDomain](https://www.happydomain.org/en/)
- XMPP
- HomeAssistant
- [SimpleLogin](https://github.com/lhbdhr/simplelogin)
- [Plant-it](https://docs.plant-it.org/0.7.4/)
- Crowdsec
- Ollama
- [Authelia](https://www.authelia.com/)
## XMPP
Je veux créer une **messagerie familiale/amicale moderne basée sur XMPP** avec les caractéristiques suivantes :
### 1. Objectifs fonctionnels
- **Messagerie multi-appareils** avec archivage (XEP-0280, XEP-0313)
- **Partage de fichiers** (HTTP Upload XEP-0363, XEP-0066, XEP-0231)
- **Audio/vidéo** (Jingle ICE XEP-0166, XEP-0167, XEP-0176, XEP-0334)
- **Fonctionnalités sociales** (XEP-0084, XEP-0082, XEP-0163, XEP-0080)
- **Sécurité avancée** (OMEMO XEP-0384, Device List XEP-0414, XEP-0373, XEP-0374)
- **Organisation des conversations** (MUC XEP-0045, XEP-0288, XEP-0422, XEP-0313)
- Compléments : XEP-0224, XEP-0047, XEP-0136, XEP-0297
---
### 2. Architecture du stack
- **Prosody** : container Docker avec tous les modules natifs + modules communautaires (installés depuis lhôte)
- **coturn** : serveur STUN/TURN accessible depuis Internet pour traversée NAT
- **sslh** : multiplexe le port 443 pour HTTPS (BOSH/WebSocket), XMPP (5222), et SSH
- **Traefik** : déjà existant dans un autre container, besoin d'ajouter les labels necessaires pour Prosody et coturn
---
### 3. Contraintes techniques
- **Pas de fédération XMPP** (pas de port 5269 ouvert)
- **HTTPS et BOSH/WebSocket** passent par sslh → Prosody écoute en localhost uniquement (8443 interne pour HTTPS/BOSH, 5222 pour XMPP)
- **Modules Prosody** doivent inclure tous les XEP listés ci-dessus
- **Volumes Docker persistants** pour données, logs, fichiers uploadés
- **Configuration coturn** avec TLS/STUN/TURN, utilisable par Prosody pour Jingle ICE
---
### 4. Livrables attendus
1. **Docker Compose complet** pour Prosody et coturn, avec sslh en host ou container séparé, utilisant le réseau interne Docker
2. **Configuration Prosody** complète :
- VirtualHost
- Modules natifs + communautaires
- HTTP Upload intégré
- BOSH/WebSocket configuré pour SSL interne
- Jingle ICE configuré avec coturn
3. **Configuration coturn** sécurisée et accessible depuis Internet
4. **Script shell pour installer automatiquement tous les modules communautaires** depuis lhôte
5. **Configuration sslh** pour multiplexage :
- Port 443 → HTTPS (8443 interne), XMPP (5222), SSH (22)
6. **Explication complète des interactions** entre chaque composant, logique de routage, sécurité et flux des données
7. **Conseils de sécurité et bonnes pratiques** pour un usage familial/amical
Assure toi de la cohérence pour Prosody, BOSH/WebSocket et Coturn.
Coturn exposé STUN/UDP + TURN/TLS TCP, accessible depuis Internet.
Volumes persistants pour données, fichiers uploadés, modules et certificats sur /srv/docker/xmpp/[prosody][coturn][...]
---
💡 **Objectif final** : un **stack Docker XMPP complet, moderne, sécurisé et prêt à déployer**, avec Prosody, coturn, sslh pour multiplexage HTTPS/XMPP/SSH, et modules XEP avancés pour messagerie, fichiers, audio/vidéo, et social.
## List
- https://selfh.st/apps/