Aller au contenu principal
Version: Next

Installation

astuce

ruleshake-start permet un démarrage rapide de la suite RuleShake incluant également la configuration de la base de données MongoDB et le fournisseur d'identité Keycloak.

Prérequis

Afin de pouvoir exécuter les services RuleShake, il est nécessaire d'avoir un MongoDB et un Identity Provider pour l'authentification à la fois du front RuleShake Studio, mais également des services back RuleShake Catalog, Runner et Referential.

Ces middlewares doivent être configurés avant d'être utilisés par les services RuleShake :

Installation des services RuleShake

docker-compose.yml
version: "3.8"

services:
studio:
image: ruleshake/studio
container_name: "ruleshake-studio"
restart: unless-stopped
ports:
- '9000:80'
environment:
VITE_RULESHAKE_CATALOG_URL: "http://localhost:9001/api"
VITE_RULESHAKE_RUNNER_URL: "http://localhost:9002/api"
VITE_RULESHAKE_REFERENTIAL_URL: "http://localhost:9003/api"
VITE_AUTH_AUTHORITY: ${KEYCLOAK_AUTHORITY}
VITE_AUTH_CLIENT_ID: ${KEYCLOAK_CLIENT_ID}
VITE_AUTH_CLIENT_SECRET: ${KEYCLOAK_CLIENT_SECRET}

catalog:
image: ruleshake/catalog
container_name: "ruleshake-catalog"
restart: unless-stopped
ports:
- '9001:9001'
environment:
CATALOG_PORT: 9001
MONGO_URL: ${MONGO_URL}
REFERENTIAL_URL: http://referential:9003/api
RUNNER_URL: http://runner:9002/api
OAUTH2_ISSUER_URI: ${KEYCLOAK_AUTHORITY}
STUDIO_ALLOWED_ORIGINS: http://localhost:9000
SECURITY_USER_NAME: admin
SECURITY_USER_PASSWORD: admin

runner:
image: ruleshake/runner
container_name: "ruleshake-runner"
restart: unless-stopped
ports:
- '9002:9002'
environment:
RUNNER_PORT: 9002
MONGO_URL: ${MONGO_URL}
REFERENTIAL_URL: http://referential:9003/api
OAUTH2_ISSUER_URI: ${KEYCLOAK_AUTHORITY}
STUDIO_ALLOWED_ORIGINS: http://localhost:9000
SECURITY_USER_NAME: admin
SECURITY_USER_PASSWORD: admin

referential:
image: ruleshake/referential
container_name: "ruleshake-referential"
restart: unless-stopped
ports:
- '9003:9003'
environment:
REFERENTIAL_PORT: 9003
MONGO_URL: ${MONGO_URL}
OAUTH2_ISSUER_URI: ${KEYCLOAK_AUTHORITY}
STUDIO_ALLOWED_ORIGINS: http://localhost:9000
SECURITY_USER_NAME: admin
SECURITY_USER_PASSWORD: admin

Ce docker-compose.yml permet de récupérer les images docker et les démarrer sur votre machine. Chaque image nécessite une configuration sous forme de variables d'environnements :

RuleShake Studio

Image : https://hub.docker.com/r/ruleshake/studio

  • VITE_RULESHAKE_CATALOG_URL : URL de base de l'API de RuleShake Catalog. Ex: http://localhost:8081/api
  • VITE_RULESHAKE_RUNNER_URL : URL de base de l'API de RuleShake Runner. Ex: http://localhost:8082/api
  • VITE_RULESHAKE_REFERENTIAL_URL : URL de base de l'API de RuleShake Referential. Ex: http://localhost:8083/api
  • VITE_AUTH_AUTHORITY : URL du OAuth2/OIDC Provider. Ex: http://keycloak:9090/realms/ruleshake-samples
  • VITE_AUTH_CLIENT_ID : Identifiant du client dans l'Identity Provider. Ex: ruleshake-studio
  • VITE_AUTH_CLIENT_SECRET : Secret du client dans l'Identity Provider.

RuleShake Catalog

Image : https://hub.docker.com/r/ruleshake/catalog

  • CATALOG_PORT : Le port utilisé par l'application à l'intérieur du conteneur. Ex: 9001
  • MONGO_URL : La chaîne de connexion à la base de données MongoDB incluant le nom du serveur, le port et les informations d'identification le cas échéant. Ex: mongodb://user:password@mongo1:27017
  • REFERENTIAL_URL: URL de base de l'API de RuleShake Referential. Ex: http://referential:9003/api
  • RUNNER_URL: URL de base de l'API de RuleShake Runner. Ex: http://runner:9002/api
  • OAUTH2_ISSUER_URI: URL du OAuth2/OIDC Provider. Ex: http://keycloak:9090/realms/ruleshake-samples
  • STUDIO_ALLOWED_ORIGINS: URL origin de RuleShake Studio. Ex: http://localhost:9000
  • SECURITY_USER_NAME: Nom de l'utilisateur pour l'authentification basic pour /actuator/**
  • SECURITY_USER_PASSWORD: Mot de passe pour l'authentification basic pour /actuator/**

RuleShake Runner

Image: https://hub.docker.com/r/ruleshake/runner

  • RUNNER_PORT : Le port utilisé par l'application à l'intérieur du conteneur. Ex: 9002
  • MONGO_URL : La chaîne de connexion à la base de données MongoDB incluant le nom du serveur, le port et les informations d'identification le cas échéant. Ex: mongodb://user:password@mongo1:27017
  • REFERENTIAL_URL: URL de base de l'API de RuleShake Referential. Ex: http://referential:9003/api
  • OAUTH2_ISSUER_URI: URL du OAuth2/OIDC Provider. Ex: http://keycloak:9090/realms/ruleshake-samples
  • STUDIO_ALLOWED_ORIGINS: URL origin de RuleShake Studio. Ex: http://localhost:9000
  • SECURITY_USER_NAME: Nom de l'utilisateur pour l'authentification basic pour /actuator/**
  • SECURITY_USER_PASSWORD: Mot de passe pour l'authentification basic pour /actuator/**

RuleShake Referential

Image: https://hub.docker.com/r/ruleshake/referential

  • RUNNER_PORT : Le port utilisé par l'application à l'intérieur du conteneur. Ex: 9003
  • MONGO_URL : La chaîne de connexion à la base de données MongoDB incluant le nom du serveur, le port et les informations d'identification le cas échéant. Ex: mongodb://user:password@mongo1:27017
  • OAUTH2_ISSUER_URI: URL du OAuth2/OIDC Provider. Ex: http://keycloak:9090/realms/ruleshake-samples
  • STUDIO_ALLOWED_ORIGINS: URL origin de RuleShake Studio. Ex: http://localhost:9000
  • SECURITY_USER_NAME: Nom de l'utilisateur pour l'authentification basic pour /actuator/**
  • SECURITY_USER_PASSWORD: Mot de passe pour l'authentification basic pour /actuator/**