« Usage des scripts - v4 » et « Installation sur Linux - v4 » : différence entre les pages

De Documentation e-comBox
(Différence entre les pages)
 
 
Ligne 1 : Ligne 1 :
{{note | De nombreux scripts pour gérer l'application sont fournis dans la '''version 4.1'''. Une brève description pour chacun d'entre eux est donné ci-dessous.  | reminder}}


== Gestion des certificats : manage_certificats.sh ==
{{note | La '''version 4.1''' est sortie avec [https://gitlab.com/e-combox/e-combox_webapp/-/blob/4.1.0/CHANGELOG.md lot de nouveauté]. C'est celle-ci qu'il faut installer et n'hésitez pas à migrer si vous utilisez une version plus ancienne. | reminder}}


{{note | Ce script permet la création et la mise à jour du certificat pour l'accès à l'interface de l'e-comBox. Des options doivent être passées en ligne de commande (voir Usage ci-après).}}                                                                                  
== Préalables ==
 
Les scripts utilisés sont disponibles sur gitlab : [https://gitlab.com/e-combox/e-comBox_scriptsLinux/-/tree/4.1 https://gitlab.com/e-combox/e-comBox_scriptsLinux].
 
{{note | Les scripts ont été testés sur les versions Linux (obligatoirement 64 bits) suivantes :
* Ubuntu (à partir la version 18.04) ;
* Debian 9 ;
* Debian 10 ;
* Debian 11 (actuellement stable). | reminder}}
 
{{Note | Vous pouvez installer une ou plusieurs instances de l'e-comBox derrière un Reverse Proxy externe. Pour configurer ce dernier, consultez le "[https://gitlab.com/e-combox/e-comBox_scriptsLinux/-/blob/v4/README.md readme]" sur Gitlab.|warn}}
 
{{Note | L'exécution des scripts doivent se faire en '''administrateur''' qui est "root" sur Linux (ou en utilisant la commande sudo).|error}}
 
{| class="wikitable"
|-
! '''Préalable, en cas de proxy pour curl et git'''
|-
|Définition des variables d'environnement nécessaires à l'exécution de commandes curl via un proxy :
* <span class="c2">export http_proxy="&lt;IPproxy&gt;:&lt;port&gt;"</span>
* <span class="c2">export https_proxy=$http_proxy</span>
|}
 
À noter également que si l'installation de Docker ne le fait pas le script de configuration crée le dossier "$USER/.docker" et le fichier /$USER/.docker/config.json".
 
== Installation de la version 4.1 ==
 
=== Principe de fonctionnement ===
Il s'agit d'une installation automatique. Le script installe l'e-comBox à partir du fichier  /opt/e-comBox/param.conf (qui a été enrichi de nouveaux paramètres) sans interaction avec l'utilisateur.
 
Le fichier /opt/e-comBox/param.conf sera automatiquement rempli avec les éléments passés en ligne de commande ou avec un fichier /opt/e-comBox/param.conf existant (éventuellement issu d'une ancienne version). Si ce dernier n'existe pas déjà il sera créé.
 
{{note|Les scripts install_linux_e-combox.sh et configure_application.sh peuvent être exécutés en mettant en paramètre un fichier contenant les paramètres que l'on veut modifier ou passer directement (avec des options) les paramètres sur le ligne de commande.<br>
 
Cela peut également être très utile pour configurer chaque instance avec un outil de déploiement tel qu'Ansible (des exemples de playbook sont fournis).|reminder}}
 
{{note | En ce qui concerne les certificats, si l’on passe par un reverse-proxy externe, les certificats de ce dernier sont propagés et il n’est pas besoin de les installer sur les instances (vous pouvez donc laisser le certificat se créer automatiquement comme proposé dans le script).<br>
 
Si vous ne passez pas par un reverse-proxy externe et que vous n'avez pas de certificat, il sera créé un certificat auto-signé mais il est aussi possible d'utiliser le script ''manage_certificat.sh'' pour générer un certificat Let's Encrypt pour votre domaine".}}
 
=== Le nouveau fichier param.conf ===
<pre>
<pre>
Usage: bash /opt/e-comBox/manage_certificats.sh -c|u [-m "valeur"] [-a] [-h]
#!/bin/bash
  -c Création et mise en place d'un certificat Lets'encrypt
 
  -u Mise à jour du certificat à partir des paramètres du fichier param.conf
# Définition des paramètres utiles à l'application.
  -m Adresse de courriel  [-m "adresse courriel"], non obligatoire
 
  -a Installation de la mise à jour automatique du certificat lorsque celui-ci est expiré. Cette option n'a d'utilité qu'une seule fois
# Version du fichier paramètre (ne pas changer la valeur).
  -h Détail des options
VERSION_PARAM="4.1.0"
</pre>
 
'''L'option "-c"''' automatise la création et l'installation d'un certificat Let's Encrypt directement utilisable pour l'application.
# Validation (ou non) de la licence.
# Si cette variable n'a pas la valeur "true", l'application ne pourra pas être installée.
# La licence est consultable ici : https://gitlab.com/e-combox/e-comBox_scriptsLinux/-/raw/v4/LICENCE.
# Les conditions plus générales de la licence CeCILL sont définies sur le site : http://www.cecill.info.
VALIDATION_LICENCE="true"
 
# Mot de passe pour la connexion en admin à e-comBox et Portainer.
# Le mot de passe doit contenir au moins de 12 caractères sans espace.
# Le mot de passe ne doit pas contenir les caractères spéciaux suivants : \ " `
# Il ne peut pas être égal à "portnairAdmin" qui est connu de tous
# Le système met le mot de passe à jour avec celui saisi si les deux conditions suivantes sont réunies
# 1 - À l'installation ou à la réinitialisation de l'application
# 2 - Si le mot de passe renseigné a été au préalable modifié sur Portainer
# Ce mot de passe en clair sera chiffré, puis supprimé à l'installation, à la réinitialisation ou à la reconfiguration de l'application
# C'est donc normal qu'une fois l'application installée, réinitialisée ou mise à jour, ce paramètre apparaisse vide.
MDP_PORTAINER=""
 
# Adresse IP privée ou nom de domaine correspondant à une adresse IP privée.
# Si vous saisissez un nom de domaine, celui-ci doit pouvoir être résolu.
# Si aucun domaine n'est configuré, les sites seront accessibles à partir du réseau local via cette adresse IP privée.
# L'adresse IP privée doit obligatoirement être configurée même si le paramètre suivant est renseigné.
ADRESSE_IP_PRIVEE=""
 
# Adresse IP publique ou nom de domaine correspondant à une adresse IP publique.
# Si vous saisissez un nom de domaine, celui-ci doit pouvoir être résolu.
# Il s'agit du nom de domaine ou de l'adresse IP qui sera utilisée pour la connexion à l'interface, à Portainer et aux sites à la place de l'adresse IP privée.
# Aucune valeur ne doit donc être saisie ici si vous ne voulez pas cela, notamment si le serveur ne doit pas être accessible de l'extérieur.
DOMAINE=""
 
# Utilisation d'un Reverse-Proxy externe configuré par vos soins - O/N (N par défaut).
# Si vous passez par un reverse proxy externe, mettre "O".
# Les minuscules sont également acceptées.
RP_EXT="N"
 
# Chemin d'accès éventuel (en cas d'utilisation d'un Reverse-Proxy externe).
# Ne pas mettre de "/" dans le chemin.
CHEMIN=""
 
# Dossier en chemin absolu contenant la clé secrète qui chiffre le mot de passe de Portainer.
# Par défaut /opt/e-comBox, il est conseillé de le modifier.
# En cas de modification après installation, ne pas oublier de déplacer le fichier contenant la clé secrète.
DOSSIER_MDP_KEY="/opt/e-comBox"
 
# Dossier en chemin absolu contenant le mot de passe chiffré.
# Par défaut /opt/e-comBox, il est conseillé de le modifier.
# En cas de modification après installation, ne pas oublier de déplacer le fichier contenant le mot de passe chiffré.
DOSSIER_MDP_CHIFFRE="/opt/e-comBox"
 
# Port utilisé pour un accès direct à Portainer (8880 par défaut).
# Ce port n'a vocation à n'être utilisé qu'en cas de dépannage si l'accès via le reverse-proxy est impossible.
PORT_PORTAINER="8880"
 
# Port utilisé pour l'accès à Portainer, à l'interface et aux sites (8800 par défaut).
# Il s'agit du seul port exposé.
# Si aucun service Web n'écoute sur le port 443 de votre serveur, ce dernier peut être utilisé.
PORT_RP="8800"
 
# Port utilisé pour le registry (5443 par défaut).
PORT_REGISTRY="5443"
 
# Adresse du Proxy.
# Saisissez ip-proxy:port.
ADRESSE_PROXY=""
 
# Hôtes à ignorer par le proxy.
# Ce paramètre n'est à renseigner que si une adresse de Proxy a été saisie.
# Saisissez le ou les hôtes séparés par une virgule sans espace.
NO_PROXY=""


{{note|Votre instance doit être joignable sur le port 80. Attention, vous n'avez pas à installer de serveur Web, le script se charge de tout. L'instance doit juste être en mesure de répondre à une requête de type http://votre_nom_de_domaine (où le nom de domaine est la valeur renseigné dans la paramètre DOMAINE de param.conf). Une redirection peut donc être nécessaire.|warn}}
# Adresse du réseau interne à Docker.
# Si ce n'est pas votre première installation de l'application, le réseau a déjà été crée et affecté aux sites existants.
# Si vous modifiez les paramètres de ce réseau, TOUS LES SITES EXISTANTS SERONT SUPPRIMÉS.
NET_ECB="192.168.97.0/24"


'''Le script :'''
# Suppression des images non associées à un site en cours d'exécution (true par défaut)
* crée le certificat en utilisant le paramètre "DOMAINE" du param.conf de de manière optionnelle le paramètre MAIL (qui peut être soit renseigné dans param.conf soit directement ajouté via l'option "-m" de la ligne de commande) ;
# Cela permet de gagner de l'espace mais aussi de supprimer des images qui ne seront plus jamais utilisées
* copie les fichiers dans /opt/e-comBox/letsencrypt/live/<domaine> ;
# Le premier démarrage des sites sera un peu plus long car les images correspondantes devront être de nouveau téléchargées.
* renseigne les paramètres correspondants de param.conf :
# Définir le paramètre à "false" si vous voulez ne voulez pas supprimer ces images (non conseillé lors d'une migration).
** CHEMIN_CERT="/opt/e-comBox/letsencrypt/live/<domaine>/fullchain.pem"
DEL_IMAGES="true"
** CHEMIN_KEY="/opt/e-comBox/letsencrypt/live/<domaine>/privkey.pem"
** MAIL (si un mail est passé en ligne de commande) ;
* installe le certificat au niveau de l'application.


'''L'option "-a"''' (que l'on peut activer ultérieurement) met en place une tâche automatique qui vérifie quotidiennement si le certificat a expiré et le met à jour le cas échéant.
# Les 2 variables qui suivent sont utiles pour donner le chemin vers les éléments pour mettre en place un certificat existant.
# Vous pouvez les laisser vides dans trois cas.
# Cas 1 : si vous passez par un reverse proxy externe, les certificats configurés dans ce dernier sont propagés.
# Cas 2 : l'accès à l'e-comBox ne va se faire que via le réseau local.
# Cas 3  vous ne disposez pas de certificat pour votre nom de domaine.
# À noter que le script manage_certificat.sh crée un certificat Let's Encrypt et permet de mettre à jour l'application
# si une des 6 variables qui suivent ont été modifiées
# Un certificat auto-signé se créera alors automatiquement via les 4 variables qui suivent.


'''L'option "-u"''' :
# Fichier certificat existant avec le chemin complet /chemin/fichier.crt ou /chemin/fichier.pem.
CHEMIN_CERT=""


* met à jour le certificat de l'e-comBox si des valeurs à CHEMIN_CERT et à CHEMIN_KEY sont modifiées, ajoutées ou supprimées ;
# Fichier de la clé privée existante correspondante au certificat avec le chemin complet /chemin/fichier.key.
* met à jour le certificat de l'e-comBox (si ce type de certificat auto-signé est utilisé) mais aussi d'autres certificats nécessaires qui s'appuient sur les variables CODE_PAYS, NOM_PAYS, NOM_REGION, NOM_ORGANISATION. Ainsi, si au moins une de ces 4 paramètres sont modifiés, il est nécessaire de mettre à jour les certificats.
CHEMIN_KEY=""


== Réinitialisation de l'application : reinitialise_application.sh ==
# Uniquement si utilisation de manage_certificat.sh pour créer un certificat Let's Encrypt
{{note|Ce script permet de réinitialiser l'application.  Des options doivent être passées en ligne de commande (voir Usage ci-après).|}}{{Note/fr|type=error|Attention, tous les sites seront perdus.}}<pre>
# Adresse de courriel non obligatoire pour créer le certificat (mais recommandé par Lets'encrypt)
Usage: bash /opt/e-comBox/reinitialise_application.sh -f [-n] [-v "valeur"] [-i "valeur"] [-d "valeur"] [-r "valeur"] [-c "valeur"] [-p "valeur"] [-o "valeur"] [-h]
MAIL=""
  -f Suppression de tous les conteneurs, volumes, réseaux et images.
  -n Réinstallation de l'application.
  -v Version de l'application à installer si vous voulez changer de version [-v "version"].
  -i Adresse IP privée nom de domaine correspondant à une adresse IP privée  [-i "@IP_PRIVEE" | -i "nom_domaine"].
  -d Adresse IP publique nom de domaine correspondant à une adresse IP publique  [-d "@IP_PUBLIQUE" | -d "nom_domaine"].
        Pour supprimer une valeur existante -d "".
  -r Passage par un Reverse-Proxy externe ou non  [-r "O" | -r "N"].
  -c Chemin en cas de Reverse-Proxy externe [-c "chemin"].
        Pour supprimer un chemin existant -c "".
  -p Mot de passe de Portainer [-p "mot_de_passe"].
  -h Détail des options.
</pre>


'''L'option "-f"''' est obligatoire, elle force la suppression des conteneurs, volumes, réseaux et images.
# Les 4 variables suivantes sont utiles pour créer un certificat auto signé.
# Elles sont utilisés pour le certificat du registry local.
# Elles sont également utilisées pour le reverse proxy (Nginx) si CHEMIN_CERT et CHEMIN_KEY sont vides.
# Même si vous avez un certificat existant, elles doivent obligatoirement être renseignées.
# Vous pouvez les modifier comme il vous convient.


L'ajout de '''l'option "-n"''' permet de réinstaller l'application en changeant éventuellement la version via l'option "-v".
# Code Pays sur 2 lettres.
CODE_PAYS="FR"


Sans l'option "-n", l'application n'est pas réinstallée mais est prête à l'être, l'ancien fichier param.conf sera sauvegardé en param.sauv.conf et un fichier param.conf contenant les valeurs pas défaut sera téléchargé.
# Nom Pays.
NOM_PAYS="France"


Dans le cadre d'une réinstallation, '''l'option "-p"''' est obligatoire si un mot de passe pour Portainer n'a pas été renseigné dans le param.conf car, lors de la réinitialisation, les anciens identifiants de Portainer ont également été réinitialisés.
# Nom région.
{{note | Le mot de passe ne peut pas contenir les caractères " et $.| warn}}
NOM_REGION="Corse"
Les '''autres options''' servent à la réinstallation de l'application pour alimenter le fichier param.conf, options identiques à celles utilisables lors de la configuration de l'application via le script configure_application.sh.


== Suppression de l'application : delete_application.sh ==
# Nom organisation.
{{note | Ce script permet de supprimer l'application e-comBox. Une option -e ou -a doit obligatoirement être passée en ligne de commande (voir Usage ci-après).}}
NOM_ORGANISATION="ReseauCerta"
<pre>
Usage: bash /opt/e-comBox/delete_application.sh -e | -a [-h]
  -e Suppression de l'application uniquement
  -a Suppression de l'application, docker et docker-compose
  -h Détail des options
</pre>
</pre>


'''L'option "-e"''' supprime uniquement l'application.
=== Installation de l'e-comBox 4.1 ===
{{note | Attention, le dossier /opt/e-comBox sera supprimé ainsi que les logs.|warn}}
À noter qu'à partir de la version 4.1, il suffit de télécharger et d'exécuter le script configure_application.sh. Ce dernier installera Docker et Docker Compose s'ils sont inexistants sur le serveur.
<br>


'''1. Téléchargement du script configure_application.sh'''


'''L'option "-a"''' supprime également Docker et Docker Compose.
Le téléchargement du script peut se faire à partir de la commande :
<pre>wget https://gitlab.com/e-combox/e-comBox_scriptsLinux/raw/4.1/configure_application.sh --output-document configure_application.sh</pre>


== Mise à jour de l'application : update_ecb.sh ==
{{Note/fr|Lorsqu'une nouvelle image de l'e-comBox est disponible, ce script met à jour l'application sans que l'on soit obligé de dérouler le script configure_application.sh.}}
Il est exécutable sans option.


== Mise à jour des images : manage_images.sh ==
'''2. Exécution du script configure_application.sh'''
{{note|Ce script permet de supprimer et de gérer les images de l'e-comBox sans être obligé de reconfigurer l'application.. Des options doivent être renseignées en ligne de commande (voir Usage ci-après).}}


{{note | L'exécution du script doit se faire en '''administrateur''' qui est "root" sur Linux (ou en utilisant la commande sudo).}}
<pre>
<pre>
Usage: bash /opt/e-comBox/manage_images.sh -d|u [-a] [-p] [-w] [-b] [-m] [-s] [-o] [-k] [-b] [-i "nom_image"] [-f "nom_image" | -f "type_image"] [h]
Usage: bash configure_application.sh [-f "valeur"] [-i "valeur"] [-d "valeur"] [-r "valeur"] [-c "valeur"] [-p "valeur"] [s | b] [-h]
  -d Suppression des images non associées à un site en cours d'exécution [-d]
  -f  Chemin vers le fichier de paramètre  [-f "/chemin/nom_fichier"]
  -u Mise à jour des images. Les sites doivent être redémarrés pour la mise à jour soit effective [-u]
  -i  Adresse IP privée ou nom de domaine correspondant à une adresse IP privée
  -a L'action porte sur toutes les images existantes.
        [-i "@IP_PRIVEE" | -i "nom_domaine"]
   -p Suppression ou mise à jour des images Prestashop [-p]
  -d   Adresse IP publique ou nom de domaine correspondant à une adresse IP publique 
   -w Suppression ou mise à jour des images WooCommerce [-w]
        [-d @IP_PUBLIQUE | -d nom_domaine].
   -b Suppression ou mise à jour des images Blog [-b]
        Pour supprimer une adresse IP publique ou un domaine existant -d ""
  -m Suppression ou mise à jour des images Mautic [-m]
  -r   Passage par un Reverse-Proxy externe ou non  [-r "O" | -r "N"]
  -s Suppression ou mise à jour des images Suite CRM [-s]
  -c   Chemin en cas de Reverse-Proxy externe [-c "chemin"]. Pour supprimer un chemin existant -c ""
   -o Suppression ou mise à jour des images Odoo [-o]
  -p   Mot de passe de Portainer [-p "mot_de_passe"]
  -k Suppression ou mise à jour des images Kanboard [-k]
        Les caractères suivants " $ ` \ & | ! [space] ne peuvent pas être utilisés en ligne de commande
  -b Suppression ou mise à jour des images HumHub [-b]
  -s  Met la variable de suppression des images à "true"  le temps d'exécution du script [-s]
  -i Suppression ou mise à jour d'une image spécifique [-i "nom_image"]
  -b   Met la variable de suppression des images à "false" le temps d'exécution du script [-n]  
  -f Mise à jour d'une image utilitaire [-f "nom_image" | -f "type_image"]
  -h   Détail des options
  -h Détail des options
</pre>
</pre>'''L'opération de suppression d'images''' peut être utile pour gagner de la place. Certaines images prennent de la place sur le disque dur sans être utilisées. C'est une opération qui peut être salutaire et qui est sans risque, il n'est pas possible de supprimer des images associées à des sites en cours d'exécution. Le seul inconvénient est que le démarrage des sites seraun peu plus lent car il faudra télécharger de nouveau les images correspondantes.


'''La mise a jour de l'image''' peut s'avérer nécessaire si celle-ci a été mise à jour suite à un bug ou à une faille de sécurité.
'''Exemple d'exécution du script :'''
<pre>
bash /opt/e-comBox/configure_application.sh -i "192.168.10.1" -d "ecb.nom.domaine" -c "instance1" -r "O" -p "mdp_portainer"
</pre>


== Configuration ou re-configuration de l'intégralité de l'application : configure_application.sh ==
Les valeurs des paramètres peuvent également être renseignées directement dans /opt/e-comBox/param.conf ou être passées (avec l'option "-f") via un fichier :
{{note|Ce script doit être utilisé pour :
* installer l'application ;
* re-configurer l'application si des éléments importants de l'environnement ont changé (adresse IP, domaine, passage par un Reverse Proxy externe, passage par un proxy).
Il peut être utilisé avec des options facultatives qui remplacent les valeurs du fichier param.conf.
La valeur des principaux paramètres peut être passée directement en ligne de commande (voir Usage ci-après).}}
<pre>
<pre>
Usage: configure_application.sh [-f "valeur"] [-i "valeur"] [-d "valeur"] [-r "valeur"] [-c "valeur"] [-p "valeur"] [-h]
bash /opt/e-comBox/configure_application.sh -f "chemin_vers_fichier"
  -f Chemin vers le fichier de paramètre  [-f "/chemin/nom_fichier"]
  -i Adresse IP privée ou nom de domaine correspondant à une adresse IP privée  [-i "@IP_PRIVEE" | -i "nom_domaine"]
  -d Adresse IP publique ou nom de domaine correspondant à une adresse IP publique  [-d @IP_PUBLIQUE | -d nom_domaine]. Pour supprimer une adresse IP publique ou un domaine existant -d ""
  -r Passage par un Reverse-Proxy externe ou non  [-r "O" | -r "N"]
  -c Chemin en cas de Reverse-Proxy externe [-c "chemin"]. Pour supprimer un chemin existant -c ""
  -p Mot de passe de Portainer  [-p "mot_de_passe"]
        Les caractères suivants " $ ` \ & | ! [space] ne passent pas en ligne de commande
  -s Met la variable de suppression des images à "true" le temps d'exécution du script [-s]
  -b Met la variable de suppression des images à "false" le temps d'exécution du script [-n]
  -h Détail des options
</pre>
</pre>


Voir également la partie sur [[https://wiki-ecombox.btssio.corsica/index.php/Installation_sur_Linux_-_v4#Installation_de_l'e-comBox_4.1|l'installation de l'application]].
'''Exemple de fichier :'''
 
== Réinitialisation du mot de passe de Portainer : reset_pass_portainer.sh ==
{{Note|Ce script permet de réinitialiser, en cas de perte, le mot de passe de Portainer. L'option "-f" doit obligatoirement être passée en ligne de commande (voir Usage ci-après).}}
<pre>
<pre>
Usage: /opt/e-comBox/reset_pass_portainer.sh -f [-h]
ADRESSE_IP_PRIVEE="172.31.40.109"
-f Réinitialisation du mot de passe de Portainer
DOMAINE="ecb.nom.domaine"
-h Détail des options
RP_EXT="O"
CHEMIN="rne"
MDP_PORTAINER="mdp_portainer"
DOSSIER_MDP_KEY="/etc/ssl/certs/ecombox"
DOSSIER_MDP_CHIFFRE="/etc/ssl/certs/ecombox"
</pre>
</pre>


{{Note | Vous devez ensuite vous connecter sur Portainer pour modifier le mot de passe fourni afin que ce dernier soit compatible avec l'application. <nowiki>Les caractères suivants " $ ` \ & | ! [space] ne peuvent pas être utilisés en ligne de commande. Si vous saisissez votre mot de passe dans le fichier param.conf, seuls les caractères spéciaux \ " et ` sont interdits</nowiki>. | warn}}
{{note | tous les paramètres peuvent être modifiés via ce fichier. Dans l'exemple ci-dessus, les paramètres DOSSIER_MDP_KEY et DOSSIER_MDP_CHIFFRE seront également modifiés.}}
 
{{note | En ce qui concerne le mot de passe de Portainer, <nowiki>Les caractères suivants " $ ` \ & | ! [space] ne peuvent pas être utilisés en ligne de commande. Si vous saisissez votre mot de passe dans le fichier param.conf, seuls les caractères spéciaux \ " et ` sont interdits</nowiki>.| warn}}
 
== Installation de la version 4.0 ==
 
=== Principes de fonctionnement ===
 
'''Le script principal ''install_linux_ecomBox.sh'' installe l'outil "curl" et appelle 2 autres scripts :
* ''install_docker_docker-compose.sh'' : installe docker et docker-compose ;
* ''configure_application.sh'' : configure l'application e-combox.
 
Vous pouvez :
* soit exécuter le script principal ;
* soit récupérer et exécuter consécutivement les deux scripts.
 
Le script de configuration de l'application est interactif, il demande des informations et utilise un fichier de paramètres ''/opt/e-comBox/param.conf qui contient :
* l'adresse IP privée du serveur (par défaut 127.0.0.1) ;
* l'adresse IP publique ou le nom de domaine (si l'application doit être accessible de l'extérieur) ;
* le chemin d'accès (en cas de passage par un Reverse Proxy externe) ;
* le numéro des quatre ports que l'application doit obligatoirement utiliser :
** Port utilisé pour l'interface de l'e-comBox, par défaut PORT_ECB=8888,
** Port utilisé pour Portainer, par défaut PORT_PORTAINER=8880,
** Port utilisé pour l'accès  aux sites, par défaut PORT_RP=8800 (c'est le seul port "utile", voir note ci-dessous)
** Port pour le registry, par défaut PORT_REGISTRY=5443 (ce port est interne et n'est pas exposé) ;
* l'adresse du proxy et hôtes à ignorer (si un proxy est nécessaire pour l'accès Internet);
* les variables nécessaires au certificat (à ne remplir qu'en cas de non utilisation de Reverse Proxy externe).
 
{{note | Le port du Reverse Proxy (PORT_RP) est le seul port non transparent pour les utilisateurs : c'est ce port qui est utilisé dans l'URL si on ne passe pas par le Reverse Proxy externe ou c'est vers ce port qu'il faudra rediriger dans la [https://gitlab.com/e-combox/e-comBox_scriptsLinux/-/blob/v4/README.md configuration du Reverse Proxy externe].}}
 
L'adresse IP et les configurations du proxy peuvent être modifiés interactivement via le script. Les ports doivent être modifiés dans le fichier "param.conf" avant de lancer le script.
 
{{note | Il est aussi possible de modifier l'adresse du réseau à utiliser pour les sites si celle par défaut ne convient pas au moment où cela est demandé. '''Cette dernière doit être différente de l'adresse réseau utilisée par l'établissement'''.| reminder}}
 
=== Installation de l'e-comBox 4.0 ===
 
'''1. Téléchargement du script principal'''
 
Le téléchargement du script principal peut se faire à partir de la commande :
<pre>wget https://gitlab.com/e-combox/e-comBox_scriptsLinux/raw/v4/install_linux_e-comBox.sh --output-document install_linux_e-comBox.sh</pre>
 
'''2. Exécution du script principal'''
 
{{note | L'exécution du script doit se faire en '''administrateur''' qui est "root" sur Linux (ou en utilisant la commande sudo).}}
<pre>bash install_linux_e-comBox.sh</pre>
 
Pour exécuter le script en tant qu'administrateur :
- '''''sudo bash install_linux_e-comBox.sh''''' et vous saisissez votre mot de passe ;
- ou bien '''''sudo su''''' puis vous saisissez votre mot de passe et vous exécutez ensuite le script : '''''bash install_linux_e-comBox.sh'''''.
 
Si l'installation ne le fait pas le script de configuration crée le dossier "$USER/.docker" et le fichier /$USER/.docker/config.json".
 
{{note | Les fichiers nécessaires à l'application, les scripts de reconfiguration de l'application ainsi que le fichier contenant les identifiants d'accès aux applications (''e-comBox_identifiants_acces_applications.pdf'') sont installés dans "/opt/e-comBox".|warn}}
 
Le script ''install_linux_ecomBox.sh'' lance automatiquement le script ''configure_application.sh''</span><span class="c2"> qui configure l'application dans l'environnement voulu (gestion de l'adresse IP ou nom de domaine, du proxy, etc.) ;
 
{{note | Si le serveur passe par un proxy, il faut être vigilant sur la configuration du "noproxy" : il est, en effet, nécessaire d'exclure dans la configuration du proxy "localhost" et le réseau dans lequel se trouve le serveur d'ecomBox ainsi que  le réseau dans lequel se trouve le proxy (si celui-ci est différent). Par exemple, si votre réseau local est 192.168.20.0/24, il faut ajouter dans les éléments d'exclusion 192.168.20.*. Il faut séparer les valeurs saisies par une virgule.|error}}
 
{{note | Dans cette version, au cours du script, il sera nécessaire de modifier le mot de passe '''admin''' de Portainer mais il n'y a plus de nécessité de le synchroniser avec l'application e-comBox. Un script permettant de réinitialiser ce mot de passe en cas de perte est disponible dans le dossier /opt/e-comBox.}}
 
 
== Lancement de l'e-comBox et utilisation de base ==
 
'''En cas de Reverse Proxy externe :'''
* L'interface de l'e-comBox sera accessible via l'URL : https://<nom_domaine>/<chemin>/app/
* L'interface de Portainer sera accessible via l'URL : https://<nom_domaine>/<chemin>/portainer/
* Les sites seront accessibles via un URL sous la forme : https://<nom_domaine>/<chemin>/nom_du_site/
 
'''S'il n'y a pas de Reverse Proxy externe :'''
* L'interface de l'e-comBox sera accessible via l'URL : https://<adresse_IP ou nom_domaine>:PORT_RP/app/
* L'interface de Portainer sera accessible via l'URL : https://<adresse_IP ou nom_domaine>:PORT_RP/portainer/
* Les sites seront accessibles via un URL sous la forme : https://<adresse_IP ou nom_domaine>:PORT_RP/nom_du_site/
 
{{note|Si le nom de domaine est renseigné, c'est ce dernier qui est utilisé.}}
 
{{note|Si vous mettez 443 (il faut, bien sûr, qu'il soit libre) comme numéro de port au niveau de la variable PORT_RP dans le fichier de configuration param.conf, l'interface de l'e-comBox sera accessible via HTTPS sans qu'il soit besoin de préciser le PORT_RP dans l'URL | reminder.}}
 
Il faut donc lancer e-comBox en saisissant :
*l'URL '''https://<nom_domaine>/<chemin>/app/''' en cas de passage par un Reverse proxy externe ;
*l'URL '''https://<adresse_IP ou nom_domaine>:PORT_RP/app/''' en cas de non passage par un Reverse Proxy externe.
 
{{note|L'authentification peut se faire avec le compte "admin" de Portainer ou avec un compte "professeur" préalablement créé dans Portainer. '''La gestion des utilisateurs est décrite [[Gestion_Utilisateurs|ici]].'''}}
 
La connexion à l'interface de l'application nécessite obligatoirement une authentification.
[[Fichier:EcranAuthentificationEcomBox.png|centré|500x500px]]
{{note|Dans cette version, plusieurs comptes "professeurs" peuvent être créés et chaque professeur ne voit et ne peut agir que sur ses propres sites. Si vous ne disposez pas d'identifiants, il est nécessaire de contacter l'administrateur de votre instance.Par ailleurs, vous pouvez modifier votre mot de passe via l'interface.|reminder}}.
 
Lorsqu'on se connecte (après s'être authentifié), un tableau de bord simplifié permet d'avoir une vue d'ensemble :
[[Fichier:InterfaceEcombox.png|centré|900x900px]]
<br clear=all>
<span class="c6">Un clic, dans le menu de gauche (par exemple sur Odoo) conduit à un écran similaire à ci-dessous :</span>
[[Fichier:InterfaceOdooSelectionnee.png|centré|900x900px]]
<br clear=all>
La prise en main de cette interface avec sa gestion de base (créer, démarrer, arrêter ou supprimer un site) ainsi que la gestion avancée est décrite plus précisément [[Premiers_pas_-_v4|ici]].
 
'''En cas de problème''' consultez la [[FAQ_-_v4 | FAQ]].{{note | En cas de modification de l'environnement, comme un changement d'adresse IP ou l'ajout (voire la désactivation) d'un proxy, il est nécessaire de réinitialiser l'environnement en exécutant de nouveau le script ''configure_application.sh'' avec de nouvelles options si nécessaire :
<pre>bash /opt/e-comBox/configure_application.sh [options] </pre> | error}}
 
== La gestion des ressources pour Docker ==
 
Sur Linux, le professeur sera juste limité par la capacité de son poste (capacité du disque, capacité du processeur et capacité de la mémoire) sachant que le processeur et la mémoire ne sont affectés que lorsque les sites sont lancés.
 
Par exemple, une instance de Prestashop sur Docker nécessite aux alentours de 200 MB de RAM.


== Sauvegarde et Restauration ==
Le tableau de bord fournit des statistiques d'utilisation en temps réel.
=== sauv_sites.sh ===
=== restaure_sites.sh ===
=== restaure_v3.sh ===
== Utilisation d'Ansible ==

Version du 23 février 2023 à 23:57

La version 4.1 est sortie avec lot de nouveauté. C'est celle-ci qu'il faut installer et n'hésitez pas à migrer si vous utilisez une version plus ancienne.

Préalables

Les scripts utilisés sont disponibles sur gitlab : https://gitlab.com/e-combox/e-comBox_scriptsLinux.

Les scripts ont été testés sur les versions Linux (obligatoirement 64 bits) suivantes :
  • Ubuntu (à partir la version 18.04) ;
  • Debian 9 ;
  • Debian 10 ;
  • Debian 11 (actuellement stable).
Vous pouvez installer une ou plusieurs instances de l'e-comBox derrière un Reverse Proxy externe. Pour configurer ce dernier, consultez le "readme" sur Gitlab.
L'exécution des scripts doivent se faire en administrateur qui est "root" sur Linux (ou en utilisant la commande sudo).
Préalable, en cas de proxy pour curl et git
Définition des variables d'environnement nécessaires à l'exécution de commandes curl via un proxy :
  • export http_proxy="<IPproxy>:<port>"
  • export https_proxy=$http_proxy

À noter également que si l'installation de Docker ne le fait pas le script de configuration crée le dossier "$USER/.docker" et le fichier /$USER/.docker/config.json".

Installation de la version 4.1

Principe de fonctionnement

Il s'agit d'une installation automatique. Le script installe l'e-comBox à partir du fichier /opt/e-comBox/param.conf (qui a été enrichi de nouveaux paramètres) sans interaction avec l'utilisateur.

Le fichier /opt/e-comBox/param.conf sera automatiquement rempli avec les éléments passés en ligne de commande ou avec un fichier /opt/e-comBox/param.conf existant (éventuellement issu d'une ancienne version). Si ce dernier n'existe pas déjà il sera créé.

Les scripts install_linux_e-combox.sh et configure_application.sh peuvent être exécutés en mettant en paramètre un fichier contenant les paramètres que l'on veut modifier ou passer directement (avec des options) les paramètres sur le ligne de commande.
Cela peut également être très utile pour configurer chaque instance avec un outil de déploiement tel qu'Ansible (des exemples de playbook sont fournis).
En ce qui concerne les certificats, si l’on passe par un reverse-proxy externe, les certificats de ce dernier sont propagés et il n’est pas besoin de les installer sur les instances (vous pouvez donc laisser le certificat se créer automatiquement comme proposé dans le script).
Si vous ne passez pas par un reverse-proxy externe et que vous n'avez pas de certificat, il sera créé un certificat auto-signé mais il est aussi possible d'utiliser le script manage_certificat.sh pour générer un certificat Let's Encrypt pour votre domaine".

Le nouveau fichier param.conf

#!/bin/bash

# Définition des paramètres utiles à l'application.

# Version du fichier paramètre (ne pas changer la valeur).
VERSION_PARAM="4.1.0"

# Validation (ou non) de la licence.
# Si cette variable n'a pas la valeur "true", l'application ne pourra pas être installée.
# La licence est consultable ici : https://gitlab.com/e-combox/e-comBox_scriptsLinux/-/raw/v4/LICENCE.
# Les conditions plus générales de la licence CeCILL sont définies sur le site : http://www.cecill.info.
VALIDATION_LICENCE="true"

# Mot de passe pour la connexion en admin à e-comBox et Portainer.
# Le mot de passe doit contenir au moins de 12 caractères sans espace.
# Le mot de passe ne doit pas contenir les caractères spéciaux suivants : \ " `
# Il ne peut pas être égal à "portnairAdmin" qui est connu de tous
# Le système met le mot de passe à jour avec celui saisi si les deux conditions suivantes sont réunies
# 1 - À l'installation ou à la réinitialisation de l'application
# 2 - Si le mot de passe renseigné a été au préalable modifié sur Portainer
# Ce mot de passe en clair sera chiffré, puis supprimé à l'installation, à la réinitialisation ou à la reconfiguration de l'application
# C'est donc normal qu'une fois l'application installée, réinitialisée ou mise à jour, ce paramètre apparaisse vide.
MDP_PORTAINER=""

# Adresse IP privée ou nom de domaine correspondant à une adresse IP privée.
# Si vous saisissez un nom de domaine, celui-ci doit pouvoir être résolu.
# Si aucun domaine n'est configuré, les sites seront accessibles à partir du réseau local via cette adresse IP privée.
# L'adresse IP privée doit obligatoirement être configurée même si le paramètre suivant est renseigné.
ADRESSE_IP_PRIVEE=""

# Adresse IP publique ou nom de domaine correspondant à une adresse IP publique.
# Si vous saisissez un nom de domaine, celui-ci doit pouvoir être résolu.
# Il s'agit du nom de domaine ou de l'adresse IP qui sera utilisée pour la connexion à l'interface, à Portainer et aux sites à la place de l'adresse IP privée.
# Aucune valeur ne doit donc être saisie ici si vous ne voulez pas cela, notamment si le serveur ne doit pas être accessible de l'extérieur.
DOMAINE=""

# Utilisation d'un Reverse-Proxy externe configuré par vos soins - O/N (N par défaut).
# Si vous passez par un reverse proxy externe, mettre "O".
# Les minuscules sont également acceptées.
RP_EXT="N"

# Chemin d'accès éventuel (en cas d'utilisation d'un Reverse-Proxy externe).
# Ne pas mettre de "/" dans le chemin.
CHEMIN=""

# Dossier en chemin absolu contenant la clé secrète qui chiffre le mot de passe de Portainer.
# Par défaut /opt/e-comBox, il est conseillé de le modifier.
# En cas de modification après installation, ne pas oublier de déplacer le fichier contenant la clé secrète.
DOSSIER_MDP_KEY="/opt/e-comBox"

# Dossier en chemin absolu contenant le mot de passe chiffré.
# Par défaut /opt/e-comBox, il est conseillé de le modifier.
# En cas de modification après installation, ne pas oublier de déplacer le fichier contenant le mot de passe chiffré.
DOSSIER_MDP_CHIFFRE="/opt/e-comBox"

# Port utilisé pour un accès direct à Portainer (8880 par défaut).
# Ce port n'a vocation à n'être utilisé qu'en cas de dépannage si l'accès via le reverse-proxy est impossible.
PORT_PORTAINER="8880"

# Port utilisé pour l'accès à Portainer, à l'interface et aux sites (8800 par défaut).
# Il s'agit du seul port exposé.
# Si aucun service Web n'écoute sur le port 443 de votre serveur, ce dernier peut être utilisé.
PORT_RP="8800"

# Port utilisé pour le registry (5443 par défaut).
PORT_REGISTRY="5443"

# Adresse du Proxy.
# Saisissez ip-proxy:port.
ADRESSE_PROXY=""

# Hôtes à ignorer par le proxy.
# Ce paramètre n'est à renseigner que si une adresse de Proxy a été saisie.
# Saisissez le ou les hôtes séparés par une virgule sans espace.
NO_PROXY=""

# Adresse du réseau interne à Docker.
# Si ce n'est pas votre première installation de l'application, le réseau a déjà été crée et affecté aux sites existants.
# Si vous modifiez les paramètres de ce réseau, TOUS LES SITES EXISTANTS SERONT SUPPRIMÉS.
NET_ECB="192.168.97.0/24"

# Suppression des images non associées à un site en cours d'exécution (true par défaut) 
# Cela permet de gagner de l'espace mais aussi de supprimer des images qui ne seront plus jamais utilisées
# Le premier démarrage des sites sera un peu plus long car les images correspondantes devront être de nouveau téléchargées.
# Définir le paramètre à "false" si vous voulez ne voulez pas supprimer ces images (non conseillé lors d'une migration).
DEL_IMAGES="true"

# Les 2 variables qui suivent sont utiles pour donner le chemin vers les éléments pour mettre en place un certificat existant.
# Vous pouvez les laisser vides dans trois cas.
# Cas 1 : si vous passez par un reverse proxy externe, les certificats configurés dans ce dernier sont propagés.
# Cas 2 : l'accès à l'e-comBox ne va se faire que via le réseau local.
# Cas 3  vous ne disposez pas de certificat pour votre nom de domaine.
# À noter que le script manage_certificat.sh crée un certificat Let's Encrypt et permet de mettre à jour l'application
# si une des 6 variables qui suivent ont été modifiées
# Un certificat auto-signé se créera alors automatiquement via les 4 variables qui suivent.

# Fichier certificat existant avec le chemin complet /chemin/fichier.crt ou /chemin/fichier.pem.
CHEMIN_CERT=""

# Fichier de la clé privée existante correspondante au certificat avec le chemin complet /chemin/fichier.key.
CHEMIN_KEY=""

# Uniquement si utilisation de manage_certificat.sh pour créer un certificat Let's Encrypt
# Adresse de courriel non obligatoire pour créer le certificat (mais recommandé par Lets'encrypt)
MAIL=""

# Les 4 variables suivantes sont utiles pour créer un certificat auto signé.
# Elles sont utilisés pour le certificat du registry local.
# Elles sont également utilisées pour le reverse proxy (Nginx) si CHEMIN_CERT et CHEMIN_KEY sont vides.
# Même si vous avez un certificat existant, elles doivent obligatoirement être renseignées.
# Vous pouvez les modifier comme il vous convient.

# Code Pays sur 2 lettres.
CODE_PAYS="FR"

# Nom Pays.
NOM_PAYS="France"

# Nom région.
NOM_REGION="Corse"

# Nom organisation.
NOM_ORGANISATION="ReseauCerta"

Installation de l'e-comBox 4.1

À noter qu'à partir de la version 4.1, il suffit de télécharger et d'exécuter le script configure_application.sh. Ce dernier installera Docker et Docker Compose s'ils sont inexistants sur le serveur.

1. Téléchargement du script configure_application.sh

Le téléchargement du script peut se faire à partir de la commande :

wget https://gitlab.com/e-combox/e-comBox_scriptsLinux/raw/4.1/configure_application.sh --output-document configure_application.sh


2. Exécution du script configure_application.sh

L'exécution du script doit se faire en administrateur qui est "root" sur Linux (ou en utilisant la commande sudo).
Usage: bash configure_application.sh [-f "valeur"] [-i "valeur"] [-d "valeur"] [-r "valeur"] [-c "valeur"] [-p "valeur"] [s | b] [-h]
   -f   Chemin vers le fichier de paramètre  [-f "/chemin/nom_fichier"]
   -i   Adresse IP privée ou nom de domaine correspondant à une adresse IP privée
        [-i "@IP_PRIVEE" | -i "nom_domaine"]
   -d   Adresse IP publique ou nom de domaine correspondant à une adresse IP publique  
        [-d @IP_PUBLIQUE | -d nom_domaine].
        Pour supprimer une adresse IP publique ou un domaine existant -d ""
   -r   Passage par un Reverse-Proxy externe ou non  [-r "O" | -r "N"]
   -c   Chemin en cas de Reverse-Proxy externe [-c "chemin"]. Pour supprimer un chemin existant -c ""
   -p   Mot de passe de Portainer [-p "mot_de_passe"]
        Les caractères suivants " $ ` \ & | ! [space] ne peuvent pas être utilisés en ligne de commande
   -s   Met la variable de suppression des images à "true"  le temps d'exécution du script [-s]
   -b   Met la variable de suppression des images à "false" le temps d'exécution du script [-n]   
   -h   Détail des options

Exemple d'exécution du script :

bash /opt/e-comBox/configure_application.sh -i "192.168.10.1" -d "ecb.nom.domaine" -c "instance1" -r "O" -p "mdp_portainer"

Les valeurs des paramètres peuvent également être renseignées directement dans /opt/e-comBox/param.conf ou être passées (avec l'option "-f") via un fichier :

bash /opt/e-comBox/configure_application.sh -f "chemin_vers_fichier"

Exemple de fichier :

ADRESSE_IP_PRIVEE="172.31.40.109"
DOMAINE="ecb.nom.domaine"
RP_EXT="O"
CHEMIN="rne"
MDP_PORTAINER="mdp_portainer"
DOSSIER_MDP_KEY="/etc/ssl/certs/ecombox"
DOSSIER_MDP_CHIFFRE="/etc/ssl/certs/ecombox"
tous les paramètres peuvent être modifiés via ce fichier. Dans l'exemple ci-dessus, les paramètres DOSSIER_MDP_KEY et DOSSIER_MDP_CHIFFRE seront également modifiés.
En ce qui concerne le mot de passe de Portainer, Les caractères suivants " $ ` \ & | ! [space] ne peuvent pas être utilisés en ligne de commande. Si vous saisissez votre mot de passe dans le fichier param.conf, seuls les caractères spéciaux \ " et ` sont interdits.

Installation de la version 4.0

Principes de fonctionnement

Le script principal install_linux_ecomBox.sh installe l'outil "curl" et appelle 2 autres scripts :

  • install_docker_docker-compose.sh : installe docker et docker-compose ;
  • configure_application.sh : configure l'application e-combox.

Vous pouvez :

  • soit exécuter le script principal ;
  • soit récupérer et exécuter consécutivement les deux scripts.

Le script de configuration de l'application est interactif, il demande des informations et utilise un fichier de paramètres /opt/e-comBox/param.conf qui contient :

  • l'adresse IP privée du serveur (par défaut 127.0.0.1) ;
  • l'adresse IP publique ou le nom de domaine (si l'application doit être accessible de l'extérieur) ;
  • le chemin d'accès (en cas de passage par un Reverse Proxy externe) ;
  • le numéro des quatre ports que l'application doit obligatoirement utiliser :
    • Port utilisé pour l'interface de l'e-comBox, par défaut PORT_ECB=8888,
    • Port utilisé pour Portainer, par défaut PORT_PORTAINER=8880,
    • Port utilisé pour l'accès aux sites, par défaut PORT_RP=8800 (c'est le seul port "utile", voir note ci-dessous)
    • Port pour le registry, par défaut PORT_REGISTRY=5443 (ce port est interne et n'est pas exposé) ;
  • l'adresse du proxy et hôtes à ignorer (si un proxy est nécessaire pour l'accès Internet);
  • les variables nécessaires au certificat (à ne remplir qu'en cas de non utilisation de Reverse Proxy externe).
Le port du Reverse Proxy (PORT_RP) est le seul port non transparent pour les utilisateurs : c'est ce port qui est utilisé dans l'URL si on ne passe pas par le Reverse Proxy externe ou c'est vers ce port qu'il faudra rediriger dans la configuration du Reverse Proxy externe.

L'adresse IP et les configurations du proxy peuvent être modifiés interactivement via le script. Les ports doivent être modifiés dans le fichier "param.conf" avant de lancer le script.

Il est aussi possible de modifier l'adresse du réseau à utiliser pour les sites si celle par défaut ne convient pas au moment où cela est demandé. Cette dernière doit être différente de l'adresse réseau utilisée par l'établissement.

Installation de l'e-comBox 4.0

1. Téléchargement du script principal

Le téléchargement du script principal peut se faire à partir de la commande :

wget https://gitlab.com/e-combox/e-comBox_scriptsLinux/raw/v4/install_linux_e-comBox.sh --output-document install_linux_e-comBox.sh

2. Exécution du script principal

L'exécution du script doit se faire en administrateur qui est "root" sur Linux (ou en utilisant la commande sudo).
bash install_linux_e-comBox.sh
Pour exécuter le script en tant qu'administrateur :
- sudo bash install_linux_e-comBox.sh et vous saisissez votre mot de passe ;
- ou bien sudo su puis vous saisissez votre mot de passe et vous exécutez ensuite le script : bash install_linux_e-comBox.sh.

Si l'installation ne le fait pas le script de configuration crée le dossier "$USER/.docker" et le fichier /$USER/.docker/config.json".

Les fichiers nécessaires à l'application, les scripts de reconfiguration de l'application ainsi que le fichier contenant les identifiants d'accès aux applications (e-comBox_identifiants_acces_applications.pdf) sont installés dans "/opt/e-comBox".

Le script install_linux_ecomBox.sh lance automatiquement le script configure_application.sh qui configure l'application dans l'environnement voulu (gestion de l'adresse IP ou nom de domaine, du proxy, etc.) ;

Si le serveur passe par un proxy, il faut être vigilant sur la configuration du "noproxy" : il est, en effet, nécessaire d'exclure dans la configuration du proxy "localhost" et le réseau dans lequel se trouve le serveur d'ecomBox ainsi que le réseau dans lequel se trouve le proxy (si celui-ci est différent). Par exemple, si votre réseau local est 192.168.20.0/24, il faut ajouter dans les éléments d'exclusion 192.168.20.*. Il faut séparer les valeurs saisies par une virgule.
Dans cette version, au cours du script, il sera nécessaire de modifier le mot de passe admin de Portainer mais il n'y a plus de nécessité de le synchroniser avec l'application e-comBox. Un script permettant de réinitialiser ce mot de passe en cas de perte est disponible dans le dossier /opt/e-comBox.


Lancement de l'e-comBox et utilisation de base

En cas de Reverse Proxy externe :

  • L'interface de l'e-comBox sera accessible via l'URL : https://<nom_domaine>/<chemin>/app/
  • L'interface de Portainer sera accessible via l'URL : https://<nom_domaine>/<chemin>/portainer/
  • Les sites seront accessibles via un URL sous la forme : https://<nom_domaine>/<chemin>/nom_du_site/

S'il n'y a pas de Reverse Proxy externe :

  • L'interface de l'e-comBox sera accessible via l'URL : https://<adresse_IP ou nom_domaine>:PORT_RP/app/
  • L'interface de Portainer sera accessible via l'URL : https://<adresse_IP ou nom_domaine>:PORT_RP/portainer/
  • Les sites seront accessibles via un URL sous la forme : https://<adresse_IP ou nom_domaine>:PORT_RP/nom_du_site/
Si le nom de domaine est renseigné, c'est ce dernier qui est utilisé.
Si vous mettez 443 (il faut, bien sûr, qu'il soit libre) comme numéro de port au niveau de la variable PORT_RP dans le fichier de configuration param.conf, l'interface de l'e-comBox sera accessible via HTTPS sans qu'il soit besoin de préciser le PORT_RP dans l'URL

Il faut donc lancer e-comBox en saisissant :

  • l'URL https://<nom_domaine>/<chemin>/app/ en cas de passage par un Reverse proxy externe ;
  • l'URL https://<adresse_IP ou nom_domaine>:PORT_RP/app/ en cas de non passage par un Reverse Proxy externe.
L'authentification peut se faire avec le compte "admin" de Portainer ou avec un compte "professeur" préalablement créé dans Portainer. La gestion des utilisateurs est décrite ici.

La connexion à l'interface de l'application nécessite obligatoirement une authentification.

EcranAuthentificationEcomBox.png
Dans cette version, plusieurs comptes "professeurs" peuvent être créés et chaque professeur ne voit et ne peut agir que sur ses propres sites. Si vous ne disposez pas d'identifiants, il est nécessaire de contacter l'administrateur de votre instance.Par ailleurs, vous pouvez modifier votre mot de passe via l'interface.

.

Lorsqu'on se connecte (après s'être authentifié), un tableau de bord simplifié permet d'avoir une vue d'ensemble :

InterfaceEcombox.png


Un clic, dans le menu de gauche (par exemple sur Odoo) conduit à un écran similaire à ci-dessous :

InterfaceOdooSelectionnee.png


La prise en main de cette interface avec sa gestion de base (créer, démarrer, arrêter ou supprimer un site) ainsi que la gestion avancée est décrite plus précisément ici.

En cas de problème consultez la FAQ.

En cas de modification de l'environnement, comme un changement d'adresse IP ou l'ajout (voire la désactivation) d'un proxy, il est nécessaire de réinitialiser l'environnement en exécutant de nouveau le script configure_application.sh avec de nouvelles options si nécessaire :
bash /opt/e-comBox/configure_application.sh [options] 

La gestion des ressources pour Docker

Sur Linux, le professeur sera juste limité par la capacité de son poste (capacité du disque, capacité du processeur et capacité de la mémoire) sachant que le processeur et la mémoire ne sont affectés que lorsque les sites sont lancés.

Par exemple, une instance de Prestashop sur Docker nécessite aux alentours de 200 MB de RAM.

Le tableau de bord fournit des statistiques d'utilisation en temps réel.