Filesystem Storage¶
filesystem stocke les objets dans un dossier local. C'est l'adapter de
developpement, de test et de deploiement simple avec volume Docker.
Installer¶
Aucune dependance optionnelle n'est necessaire.
Configuration¶
| YAML | |
|---|---|
| Champ | Role |
|---|---|
root_path |
dossier racine du stockage |
prefix |
sous-prefixe logique ajoute devant les objets |
create_root |
cree le dossier racine si absent |
multitenant |
conserve pour symetrie config; l'adapter filesystem utilise root_path |
Avec cette config, la cle logique invoices/a.pdf est ecrite sous
/data/files/uploads/invoices/a.pdf.
Metadata Locales¶
L'adapter conserve les metadata custom dans un dossier technique sous la racine:
.arclith-storage-metadata. Ce dossier appartient a l'implementation et ne doit
pas etre lu par les use cases.
Les fichiers visibles dans root_path restent les objets eux-memes. La metadata
metier durable reste dans un Repository[T].
Docker¶
Utiliser un volume persistant sur /data/files:
| YAML | |
|---|---|
Pour debugger depuis l'hote:
Le dossier monte doit etre accessible en lecture/ecriture par l'utilisateur du conteneur.
Kubernetes¶
Adapter accessModes, storageClassName et strategie de backup aux contraintes
du cluster.
Securite¶
- Ne pas reutiliser le nom utilisateur comme chemin.
- Monter uniquement le dossier necessaire, pas tout le filesystem hote.
- Appliquer des permissions Unix strictes au volume.
- Sauvegarder le volume si les fichiers sont critiques.
- Ne pas partager le meme root path entre environnements.
Validation¶
| Bash | |
|---|---|
Le smoke test complet est decrit dans le quickstart filesystem.