Importation des données d'un FabManager situé dans un serveur distant vers un Fabmanager local

Bonjour, je suis stagiaire d’un Fablab qui a comme premier but d’importer les données d’un Fabmanager situé dans un serveur distant ( le Fabmanager en question est chez InfoManiak ), j’ai cherché pleins de tutos et des informations par rapport aux commandes Docker / Docker-Compose (Save, Import, Export, Commit), mais je ne comprends pas réellement comment procéder à l’exportation des données vers le site local.

Pour résumer, je voudrais savoir les étapes de comment procéder à cette exportation. Merci.

Salut,

La manière la plus simple de changer de serveur est d’utiliser la commande rsync.
En gros, tu dois commencer par arrêter l’instance chez Infomaniak (avec un docker-compose down) puis faire quelque chose comme :

ssh root@mon-nouveau-serveur.com
rsync -artz --info=progress2 root@mon-ancien-serveur.com:/apps/fabmanager/* /apps/fabmanager

Ensuite, tu démarres la nouvelle instance (docker-compose up -d) puis tu bascule les dns pour faire pointer le nom de domaine sur le nouveau serveur.

Bonne journée,

1 « J'aime »

D’accord, merci beaucoup pour l’explication !:v:

Mon serveur DNS est en local, donc pour le SSH ça ne seras pas possible de le transférer en RSYNC immédiatement, je vais essayer de rendre mon DNS local en public.

Si j’ai bien compris juste le fichier ./apps/fabmanager/ contient toutes les données (adhérents, projets etc.) du site ainsi que les configurations (stylesheet etc.) c’est bien ça ? Donc juste en copiant ce fichier j’aurais exactement la même chose sans problèmes ?

C’est à peu près ça, à la différence que /apps/fabmanager est un dossier et qu’il peut être différent si Fab-manager a été installé ailleurs.

Par ailleurs, tu peux très bien faire la manip ci-dessus sans DNS, en utilisant simplement les adresses IP à la place des noms de domaines. C’est d’ailleurs peut-être plus sûr comme façon de faire :wink:

1 « J'aime »

Salut ! Étant donné que le rsync pour moi était impossible, j’ai tout simplement effectué un Backup du FabManager et je l’ai exporté dans mon FabManagerTEST.

J’ai remplacé tout les fichiers présent sur /apps/fabmanager/ par le contenu du backup.tar, le soucis c’est qu’il recopie littérallement tout de l’ancien site (DNS, Version différente, etc.). C’est logique, je sais, vu que c’est un backup :sob:.

Mais ducoup ça rend tout le site de test obsolète ! Car il me fait une redirection vers l’ancien site et il y a pleins de bugs !!! :scream_cat:

Ducoup je vais formuler une autre question : C’est possible d’effectuer une exportation de données (Adhérents, factures, etc.) du FabManager Actif vers mon FabManagerTEST ? Si oui, quelles serait la meilleure voie pour l’exporter, via docker, ou une autre méthode ?

Pour résumer je veux juste transférer les données essentielles (Adhérents, Factures,e etc.) de l’ancien FabManager vers le nouveau.

1 « J'aime »

Je suis intéressé aussi par cette information.

Salut,

Non on ne peut pas faire, depuis l’interface, d’export de toutes les données. Au mieux, on peut en exporter certaines au format Excel mais de toute façon rien ne permet de les importer par la suite.

Si tu veux éviter un backup complet, tu peux juste exporter la base de données (voir ici) puis la restaurer sur nouvelle instance à jour et lancer les migrations (curl -sSL run.fab.mn | bash -s -- "db:migrate") puis le seed des nouvelles données par défaut (curl -sSL run.fab.mn | bash -s -- "db:seed").

Ensuite il te faut récupérer les fichiers uploadés et générés, à savoir tous ces dossiers là et les mettre au même endroit sur la nouvelle instance (avec rsync, ou par un autre moyen).

Il est probable que ça fonctionne « en gros », mais il est également probable que certains trucs soient cassés, en particulier tout ce qui est lié aux commandes à lancer lors des mises à jour