====== Installation ====== Suivre les instructions sur [[https://github.com/sigoden/dufs|le github]]. Notes : Cargo est le gestionnaire de paquets pour rust, il faut l'installer avant d'installer dufs. Créer votre dossier que vous voulez servir. Je l'ai pour ma part mis a la racine utilisateur (j'ai gardé l'espace web pour autre chose) ====== Lancement ====== la commande ''dufs /chemin/vers/votre/dossier'' lance le serveur en local sur le port 5000 en servant le dossier spécifié. Enfin, ça devrais marcher comme ça ^^'. Sauf que si on fait ça le serveur n'a pas accés aux assets présents dans le dépot git. une solution serait de cloner le dépot dans le dossier mais ce n'est pas très propre a mon goût (les fichiers que l'on veux partager sont tous mélangés). Pour vérifier l'installation et la mise en place du serveur proxy je vous conseille de le faire, on pourras les déplace aprés. ====== Nginx ====== location ~ /chemin { proxy_pass https://127.0.0.1:5000 }; client_max_body_size 10G; #permet de pourvoir importer des photos (10G c'est peut être overkill mais au moins ça marche ^^) ====== Configuration ====== Je vous copie le fichier fournis dans la doc avec les petites remarques que j'ai pour que tout marche bien : serve-path: '.' #toujours le même chemin bind: 0.0.0.0 port: 5000 path-prefix: /chemin #utiliser le même chemin que celui de la redirection nginx (ici chemin) si a la racine du site on met rien hidden: - tmp - '*.log' - '*.lock' auth: - admin:admin@/:rw - user:pass@/src:rw,/share - '@/' # According to the YAML spec, quoting is required. # pour que l'utilisateur non connecté ne voie pas les dossiers a la racine ne pas mettre de droit pour /. Il verra que les dossiers auquel il a un droit de lecture allow-all: false allow-upload: true allow-delete: true allow-search: true allow-symlink: true allow-archive: true enable-cors: true render-index: true render-try-index: true render-spa: true assets: ./assets/ log-format: '$remote_addr "$request" $status $http_user_agent' log-file: ./dufs.log compress: low tls-cert: tests/data/cert.pem # les certificats peuvent être gérés par nginx, pas la peine de les mettre dans la config tls-key: tests/data/key_pkcs1.pem ====== Gérer les assets avec le dépot git ailleur ====== Le truc c'est que dufs a besoin que les assets soient mis en ligne au bon endroit pour que le navigateur puisse les télécharger. Je ne comprends pas bien pourquoi c'est pas possible automatiquement (via le lancement du serveur) et y a peut être une autre solution mais la mienne c'est de les servir a la racine du site web comme si on passait pas par nginx. Je sais pas trop comment expliquer ça en vrai, n'hésitez pas a proposer via le [[https://eldritch.cafe/@ptitlutin@eldritch.cafe|fediverse]]. ====== Démarrage automatique du service ====== Pour que le service se lance automatiquement au démarrage du serveur, on lui crée un service systemd. J'ai suivi [[https://github.com/sigoden/dufs/issues/159|une proposition]] trouvée sur le github du projet. J'ai du modifier la commande de lancement de dufs par ~.cargo/bin/dufs parceque sinon systemd ne le trouvais pas (sûrement une histoire de PATH). J'ai aussi enlevé la redirection des logs qui sont gérés par la config de dufs. Et je crois que j'ai fais le tour des trucs qui n'ont pas marché comme je l'aurais cru en lisant le read.me ^^