Lancement de fabmanager au boot

Bonjour à tous!

Je suis actuellement en stage au 8fablab de Crest et en train de finioler la configuration de fab-manager…

J’arrive à me débrouiller sur Linux mais mes connaissances restent amateur…

Je suis parvenu à installer sans trop de soucis Fab-manager sur un PC local sous UbuntuServer16.04 via le tuto sur GitHub.
J’ai vite fait regardé pour docker mais ça ne semble pas adapté à nos besoins pour l’instant vu que l’on veux d’abord le tester en local. En plus je ne me suis jamais servi de docker et ça n’a pas l’air si simple que ça dans la pratique…

Du coup j’aurais besoin d’un peu d’aide pour des précisions au niveau du lancement de fab-manager au démarrage du système. J’ai un peu regardé pour créer un daemon via ce tuto:

https://doc.ubuntu-fr.org/tutoriel/comment_transformer_un_programme_en_service

Mais je me suis demandé si une méthode n’avais pas été prévue et si ça ne pose pas un problème de suivre ce tuto vu que le logiciel est démarré via une commande associée à ruby…
Du coup je poste ici pour savoir s’il n’y a pas une méthode déjà prévue.

J’ai aussi une autre question: Lorsque je lance la commande « foreman » en dehors du dossier fab-manager, j’ai ce message:

Le programme « foreman » n’est pas encore installé. Vous pouvez l’installer en tapant :
sudo apt install ruby-foreman

Du coup j’ai peur que si je lance l’installation via les dépots, ça me pose problème au moment de lancer fab-manager… (conflit ou autres) qu’en pensez-vous?
J’ai aussi remarqué que lorsque je suis dans screen, que je suis log en tant que root ou même via sudo, il n’y pas moyen de lancer « foreman » même lorsque je suis dans le dossier fab-manager.

Donc pour résumer:
Y a t-il une méthode déjà prévue pour lancer fab-manager au démarrage (daemon ou autres)? La méthode trouvée vous semble t-elle adaptée? Es-ce normal que je puisse lancer la commande « foreman » uniquement dans le dossier cité et seulement lorsque que je ne suis pas log en root? Y a t il des risques de conflits si j’installe le paquet « ruby-foreman » via les dépots?

Merci beaucoup à ceux qui prendront le temps de lire ce message et de me répondre! :slight_smile:

Salut,

C’est normal que ton bash ne trouve pas foreman car il est installé dans le gemset RVM du projet, qui n’est activé automatique que lorsque tu rentres dans le dossier du projet.

Concernant docker, tu devrais sans doute essayer avec docker-compose qui est beaucoup plus simple !

Quant à faire ce que tu veux, essaye de lancer la commande suivante dans ton script avant de démarrer fab-manager :

rvm use 2.3.0@fab-manager
# note : la liste des gemsets disponibles peut d'afficher avec la commande
rvm gemset list_all

Hello,

J’ajoute que si l’objectif est d’installer un environnement de production, il ne faut pas suivre la procédure sans Docker, car c’est une procédure seulement pour l’installation d’un environnement de dev (avec Foreman).
Et Effectivement, c’est tout à fait normal que Foreman ne puisse fonctionner que sur le Gemset associé avec le user utilisé pour l’installation de RVM.

Si tu évoques le besoin de lancer Fabmanager au démarrage, là il va falloir installer et configurer Puma et Nginx, et créer un script de lancement (avec systemd par ex) ce qui n’est pas documenté pour le moment …

Salut!

OK, ça m’avais échappé que la procédure sans docker était vraiment orientée pour du dev.
La première fois avec Docker j’avais abandonné car il nous manque pas mal d’éléments du tuto. Par exemple on n’a pas encore de nom de domaine dédié pour configurer fabmanager.
Mais je n’avais pas vu que la procédure docker-compose était un partie à part entière.
Du coup merci à vous pour votre aide et vos conseils. Je vais me rabattre sur docker-compose.

pourrais-tu proposer un début de solution sur ce script de lancement ?