Présentation
Il existe plusieurs modes d’installation de YxEAI. Tout d’abord il existe des images Docker pour essayer et ensuite le personnaliser en fonction de vos compétences sur les micro-conteneur. Ensuite vous pouvez l’installer à la main, en téléchargeant les binaires à cette même adresse et en suivant les opérations listées dans la deuxième partie.
Docker
Des images sont disponibles sur docker, vous-pouvez les récupérer en manuel ou en vous appuyant sur le fichier docker-compose suivant:
Créer un dossier yxeai et déposer le fichier “docker-compose.yml” suivant:
version: '3.4' services: yxeai-h2: image: klacksoon/yxeai-h2 container_name: yxeai-h2 networks: - yxeai-network ports: - 9092:9092 yxeai-server: image: klacksoon/yxeai-server container_name: yxeai-server networks: - yxeai-network ports: - 8080:8080 yxeai-front: image: klacksoon/yxeai-front build: ./eai-front container_name: yxeai-front networks: - yxeai-network ports: - 80:80 networks: yxeai-network: driver: bridge
Lancer la commande suivante, qui doit récupérer normalement les images et créer les conteneurs:
docker-compose up
Les containeurs suivants sont créé:
- yxeai-h2
- yxeai-server
- yxeai-front
Vous pouvez ouvrir un navigateur et aller à l’adresse http://localhost qui contiendra l’application front de YXEAI.
N’hesitez pas à modifier les ports de l’application front pour l’adapter à vos contraintes d’utilisations.
Installation manuel
Installation à la main: Le serveur
Télécharger les fichiers Server et Front dans la section Téléchargement.
Pour le serveur dézipper le fichier server.zip qui correspond à la version à installer.
le fichier config.yml est à configurer.
Base de donnée
Si vous avez une instance H2 de diposnible personnalisez les informations suivantes en renseignant les valeurs correctements, par exemple:
DatabaseConnection: pathDB: TestYXEAIDB connexionBasePath: tcp://127.0.0.1:9092/yxeai-h2/
Si vous ne possédez pas d’instance H2 alors renseignez où les données de base seront enregistré, par exemple:
DatabaseConnection: pathDB: TestYXEAIDB connexionBasePath: /home/toto/yxeai
Au premier démarrage la base de donnée sera créé.
Fichier indexé
Par défaut les fichiers peuvent être indexés et une copie peut donc être disponible afin d’effectuer un rejeu ou pour consultation:
YxeaiSettings: pathFileStore: /tmp/yxeai
Si vous ne souhaitez pas conserver ces fichiersutilisez /dev/null
Fichier de configuration
C’est le fichier où est stocké l’ensemble des paramètrages des flux:
configFile: ./dataTreesave.json
Lancement du serveur
rendez executable le serveur:
chmod +x start-server.sh
Puis lancez-le
./start-server.sh
Pour une première utilisation et avec les paramètrages par défaut, des erreurs d’accès aux fichiers de partages doivent apparaitre…. c’est normal ! Il faudra configurer les informations de connexion.
Installation à la main: Le Front
Le front nécessite un serveur HTTP pour publier les pages de manière statique. Si vous connaissez la configuration d’un serveur HTTP cela ne posera pas de problème. Voilà quelques méthodes dans le cas contraire.
Attention, notez que le front a été developpé à l’aide d’Angular. Bien que la base soit robuste, les configurations proposés ici et l’utilisation de certaines options fait que l’application ne doit pas être exposée sur internet mais cantoneé à l’intérieur de zone sécurisé.
node: http-server
npm install --global http-server
Dezipper le front dans le doisser yxeai-front
lancer le serveur:
http-server yxeai-front/
Par défaut le port est en 8082, mais les options de ce serveur permette d’en selectionner un autre:
http-server -p 8080 yxeai-front/
nginx
N’étant pas du tout un expert de nginx, je propose cette configuration proposé sur le site pour livrer des pages statiques
Dézipper le front dans /usr/share/nginx/html
utiliser le fichier de configuration suivant:
events{} http { include /etc/nginx/mime.types; server { listen 80; server_name localhost; root /usr/share/nginx/html; index index.html; location / { try_files $uri $uri/ /index.html; } } }
Apache 2
Testé à partir d’une Debian 11, mais cela reste valable pour toutes les distrib récentes et adapable sous windows.
Le module rewrite doit être installé:
a2enmod rewrite systemctl restart apache2
dézipper le front ici dans /var/www/html/yxeai-front
créer un .htaccess dans /var/www/html/yxeai-front, et mettre le contenu:
RewriteEngine On # If an existing asset or directory is requested go to it as it is RewriteCond %{DOCUMENT_ROOT}%{REQUEST_URI} -f [OR] RewriteCond %{DOCUMENT_ROOT}%{REQUEST_URI} -d RewriteRule ^ - [L] # If the requested resource doesn't exist, use index.html RewriteRule ^ /index.html # Extra Security Headers #<IfModule mod_headers.c> Header set X-XSS-Protection "1; mode=block" Header always append X-Frame-Options SAMEORIGIN Header set X-Content-Type-Options nosniff #</IfModule>
# If the requested resource doesn't exist, use index.html RewriteRule ^ /index.html
Dans le dossier /etc/apache2/sites-enabled, créer une nouvelle entré genre 010-yxeai-front.conf et copier le contenu:
<VirtualHost *:80> ServerAdmin webmaster@localhost DocumentRoot /var/www/html/yxeai-front ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined <Directory "/var/www/html/yxeai-front"> Options Indexes FollowSymLinks AllowOverride All Allow from all Require all granted </Directory> </VirtualHost>
Afin que les pages puissent être correctement chargées à partir d’Apache modifier le fichier yxeai-front/index.html, et changer la valeur de l’élément base pour qu’il soit tel que:
<base href="/yxeai-front/">
Relancer apache 2, l’application doit être disponible en http://localhost:80/yxeai-front