BeauTroll 31c9dcce09 Add README with deployment and CSRF fix instructions
Document initial setup steps and provide detailed instructions for fixing CSRF verification errors in Seafile v11+ when running behind Traefik reverse proxy.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-01-06 12:05:24 +01:00
2026-01-06 10:38:32 +01:00
2026-01-06 10:38:32 +01:00

Seafile Deployment

Configuration Docker pour déployer Seafile avec Traefik comme reverse proxy.

Configuration initiale

  1. Copiez .env.example vers .env et configurez les variables :

    cp .env.example .env
    
  2. Modifiez les variables dans .env :

    • SEAFILE_SERVER_HOSTNAME : votre nom de domaine
    • SEAFILE_ADMIN_EMAIL : email administrateur
    • SEAFILE_ADMIN_PASSWORD : mot de passe administrateur
    • Les mots de passe de base de données
  3. Démarrez les services :

    docker-compose up -d
    

Fix CSRF (Seafile v11+)

Après la mise à jour vers Seafile v11, Django a renforcé les vérifications CSRF. Si vous obtenez l'erreur :

Interdit (403)
La vérification CSRF a échoué. La requête a été interrompue.

Vous devez ajouter votre domaine aux origines de confiance CSRF :

  1. Accédez au conteneur Seafile :

    docker exec -it seafile bash
    
  2. Éditez le fichier de configuration :

    nano /opt/seafile/conf/seahub_settings.py
    
  3. Ajoutez à la fin du fichier (remplacez par votre domaine réel) :

    CSRF_TRUSTED_ORIGINS = ["https://votre-domaine.com"]
    
  4. Sauvegardez (Ctrl+O, Entrée, Ctrl+X) et sortez du conteneur :

    exit
    
  5. Redémarrez Seafile :

    docker-compose restart seafile
    

Note : Cette configuration est persistante car le fichier seahub_settings.py est stocké dans le volume /opt/seafile-data qui est monté sur l'hôte.

Structure

  • docker-compose.yml : Configuration des services (Seafile, MariaDB, Memcached)
  • .env : Variables d'environnement (non versionné)
  • .env.example : Exemple de configuration

Services

  • seafile : Serveur Seafile (port 80 interne, exposé via Traefik)
  • db : Base de données MariaDB
  • memcached : Cache en mémoire
  • traefik : Reverse proxy (réseau externe)
Description
No description provided
Readme 34 KiB