J'ai deux applications de fléchettes que je dois dockerize. Ces deux applications utilisent un répertoire source partagé.
Parce que Docker empêche l'ajout de fichiers à partir de dossiers situés en dehors du répertoire contextuel ( project/app1
), je ne peux pas ajouter de fichiers depuis ../shared
et depuis shared
(le lien symbolique à l'intérieur projects/app1
).
Je cherche un moyen de tromper Docker pour le faire quand même.
Ma structure de projet simplifiée
- projects
- app1
- Dockerfile
- shared (symlink ../shared)
- otherSource
- app2
- Dockerfile
- shared (symlink ../shared)
- otherSource
- shared
- source
Je pourrais Dockerfile
monter d'un niveau et courir à docker build
partir de là, mais il me faut alors deux fichiers Dockerfiles (pour app1 et app2) dans le même répertoire.
Mon idée actuelle était, si je pouvais en quelque sorte cacher le fait que projects/app1/shared
c'est un lien symbolique, ce problème serait résolu. J'ai vérifié si je pouvais partager projects
avec Samba et le remonter ailleurs et configurer Samba pour qu'il traite les liens symboliques comme des dossiers normaux, mais je n'ai pas trouvé si cela était supporté (je n'ai pas beaucoup d'expérience avec Samba et je n'ai pas encore essayé, j'ai juste cherché un peu) .
Y at-il un autre outil ou astuce qui permettrait cela?
Je préférerais ne pas changer la structure des répertoires car cela causerait d’autres problèmes et éviterait plutôt de copier des fichiers.