Skip to content

Installation

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

Leave a Reply

Your email address will not be published. Required fields are marked *