Ce référentiel contient des liens vers les ressources Camunda Platform 8, les artefacts de la version officielle (binaires) et les fichiers de configuration de prise en charge pour exécuter Docker Compose en tant qu'option de développement local.
Nous vous recommandons d'utiliser SaaS ou Helm/Kubernetes pour le développement.
Pour plus d’informations sur l’autogestion, y compris les options d’installation de développement supplémentaires, consultez notre documentation.
Pour les configurations de production, nous vous recommandons d'utiliser les graphiques Helm disponibles sur helm.camunda.io.
Le fichier docker-compose de ce référentiel utilise la dernière spécification de composition, qui a été introduite avec la version 1.27.0+ de docker compose. Veuillez vous assurer d'utiliser une version de Docker Compose à jour.
Docker 20.10.16+ est requis.
Pour prendre en charge l'actualisation des jetons et la déconnexion, votre ordinateur local doit résoudre
keycloak
en127.0.0.1
et la variableKEYCLOAK_HOST
doit être définie surkeycloak
dans le fichier.env
.
Pour créer localement un environnement autogéré Camunda Platform 8 complet, le fichier docker-compose.yaml de ce référentiel peut être utilisé.
L'environnement complet contient ces composants :
Web Modeler n'est pas inclus par défaut. Veuillez suivre les instructions ci-dessous pour l'installer.
Clonez ce dépôt et exécutez la commande suivante pour démarrer votre environnement :
docker compose up -d
Attendez quelques minutes que l'environnement démarre et se stabilise. Surveillez les journaux, en particulier le journal du conteneur Keycloak, pour vous assurer que les composants ont démarré.
Vous pouvez maintenant naviguer vers les différentes applications Web et vous connecter avec la demo
utilisateur et demo
mot de passe :
Keycloak est utilisé pour gérer les utilisateurs. Ici, vous pouvez vous connecter avec l'utilisateur admin
et le mot de passe admin
Le moteur de workflow Zeebe est disponible à l'aide de gRPC sur localhost:26500
.
Pour supprimer l'ensemble de l'environnement, exécutez la commande suivante :
docker compose down -v
Zeebe, Operate, Tasklist et Optimize nécessitent un réseau distinct d'Identity, comme vous le verrez dans le fichier docker-compose.
Si Optimize, Identity et Keycloak ne sont pas nécessaires, vous pouvez utiliser à la place docker-compose-core.yaml qui n'inclut pas ces composants :
docker compose -f docker-compose-core.yaml up -d
OU
Définissez le paramètre SEARCH_DB=opensearch
dans le fichier .env
si vous souhaitez utiliser OpenSearch au lieu d'ElasticSearch
docker compose -f docker-compose-core.yaml --profile opensearch up -d
En plus de la configuration de l'environnement local avec docker compose, utilisez Camunda Desktop Modeler pour modéliser localement les diagrammes BPMN à exécuter et les déployer directement dans votre environnement local. En tant que client entreprise, vous pouvez utiliser Web Modeler.
Les commentaires et les mises à jour sont les bienvenus !
Par défaut, l'API Zeebe GRPC est accessible publiquement sans nécessiter d'informations d'identification client à des fins de développement.
Vous pouvez cependant activer l'authentification des requêtes GRPC dans Zeebe en définissant la variable d'environnement ZEEBE_AUTHENTICATION_MODE
sur identity
, par exemple en exécutant :
ZEEBE_AUTHENTICATION_MODE=identity docker compose up -d
ou en modifiant la valeur par défaut dans le fichier .env
.
Les deux fichiers docker-compose contiennent nos connecteurs prêts à l'emploi.
Reportez-vous au guide d'installation du connecteur pour plus de détails sur la façon de fournir les modèles de connecteur associés pour la modélisation.
Pour injecter des secrets dans le runtime du Connecteur, ils peuvent être ajoutés au fichier connector-secrets.txt
à l'intérieur du référentiel au format NAME=VALUE
par ligne. Les secrets seront alors disponibles dans le runtime du Connecteur au format secrets.NAME
.
Pour ajouter des connecteurs personnalisés, créez une nouvelle image Docker les regroupant comme décrit ici.
Vous pouvez également monter de nouveaux JAR de connecteur en tant que volumes dans le dossier /opt/app
en l'ajoutant au fichier docker-compose. Gardez à l’esprit que les JAR du connecteur doivent apporter toutes les dépendances nécessaires à l’intérieur du JAR.
Un profil kibana
est disponible dans les fichiers Docker Compose fournis pour prendre en charge l'inspection et l'exploration des données Camunda Platform 8 dans Elasticsearch. Il peut être activé en ajoutant --profile kibana
à votre commande docker compose. En plus des autres composants, ce profil fait tourner Kibana. Kibana peut être utilisé pour explorer les enregistrements exportés par Zeebe dans Elasticsearch, ou pour découvrir les données dans Elasticsearch utilisées par les autres composants (par exemple Operate).
Vous pouvez accéder à l'application Web Kibana et commencer à explorer les données sans informations de connexion :
Remarque Vous devez configurer les modèles d'index dans Kibana avant de pouvoir explorer les données.
- Accédez à
Management > Stack Management > Kibana > Index Patterns
.- Créez un nouveau modèle d'index. Par exemple,
zeebe-record-*
correspond aux enregistrements exportés.
- Si vous ne voyez aucun index, assurez-vous d'abord d'exporter certaines données (par exemple, déployer un processus). Les index des enregistrements sont créés lors de l'export du premier enregistrement de ce type.
- Accédez à
Analytics > Discover
et sélectionnez le modèle d'index.
Le Desktop Modeler est open source et gratuit à utiliser.
Téléchargez Desktop Modeler et commencez à modéliser les formulaires BPMN, DMN et Camunda sur votre ordinateur local.
Une fois que vous êtes prêt à déployer ou à exécuter des processus, utilisez ces paramètres pour déployer sur l'instance Zeebe locale :
None
http://localhost:26500
Si vous avez activé l'authentification pour les requêtes GRPC sur Zeebe, vous devez fournir les informations d'identification du client lors du déploiement et de l'exécution des processus :
OAuth
http://localhost:26500
zeebe
zecret
http://localhost:18080/auth/realms/camunda-platform/protocol/openid-connect/token
zeebe-api
Web Modeler Self-Managed est disponible uniquement pour les clients d'entreprise Camunda.
Les images Docker pour Web Modeler sont disponibles dans un registre privé. Les clients Entreprise disposent déjà d'informations d'identification pour ce registre ou peuvent demander l'accès à ce registre via leur contact CSM chez Camunda.
Pour exécuter Camunda Platform avec Web Modeler Self-Managed, clonez ce dépôt et exécutez les commandes suivantes :
$ docker login registry.camunda.cloud
Username: your_username
Password: ******
Login Succeeded
.env
et définissez le paramètre SEARCH_DB=elasticserach
(cette valeur par défaut) $ docker compose -f docker-compose.yaml -f docker-compose-web-modeler.yaml up -d
ElasticSearch
exécutez la commande suivante $ docker compose -f docker-compose.yaml -f docker-compose-web-modeler.yaml down -v
Si vous souhaitez tout supprimer (y compris toutes les données que vous avez créées). Alternativement, si vous souhaitez conserver les données :
$ docker compose -f docker-compose.yaml -f docker-compose-web-modeler.yaml down
Pour exécuter Camunda Platform avec OpenSearch
exécutez ces commandes
.env
et définissez le paramètre SEARCH_DB=opensearch
$ docker compose -f docker-compose.yaml -f docker-compose-web-modeler.yaml --profile opensearch up -d
$ docker compose -f docker-compose.yaml -f docker-compose-web-modeler.yaml --profile opensearch down -v
Vous pouvez accéder à Web Modeler Self-Managed et vous connecter avec la demo
d'utilisateur et demo
de mot de passe sur http://localhost:8070.
Une fois que vous êtes prêt à déployer ou à exécuter des processus, utilisez ces paramètres pour déployer sur l'instance Zeebe locale :
None
http://zeebe:26500
Si vous avez activé l'authentification pour les requêtes GRPC sur Zeebe, vous devez fournir les informations d'identification du client lors du déploiement et de l'exécution des processus :
OAuth
http://zeebe:26500
zeebe
zecret
http://keycloak:18080/auth/realms/camunda-platform/protocol/openid-connect/token
zeebe-api
La configuration inclut Mailpit comme serveur SMTP de test. Il capture tous les e-mails envoyés par Web Modeler, mais ne les transmet pas aux destinataires réels.
Vous pouvez accéder aux e-mails dans l'interface utilisateur Web de Mailpit à l'adresse http://localhost:8075.
Lorsque vous soumettez un problème sur ce référentiel, veuillez vous assurer que votre problème est lié à la méthode de déploiement docker compose de la plateforme Camunda. Toutes les questions concernant la fonctionnalité des applications Web doivent plutôt être publiées sur le forum Camunda. C'est le meilleur moyen pour les utilisateurs de rechercher des réponses existantes que d'autres ont déjà rencontrées. Nous avons également une catégorie sur ce forum spécifiquement pour les sujets liés au déploiement.
Lorsque vous utilisez du matériel basé sur arm64 comme un Mac M1 ou M2, le conteneur Keycloak peut ne pas démarrer car Bitnami ne fournit que des images basées sur amd64 pour les versions <22. Vous pouvez créer et étiqueter localement une image basée sur arm à l'aide de la commande suivante. Après avoir créé et balisé l'image, vous pouvez démarrer l'environnement comme décrit dans Utilisation de docker-compose.
$ DOCKER_BUILDKIT=0 docker build -t bitnami/keycloak:19.0.3 "https://github.com/camunda/camunda-platform.git#8.2.15:.keycloak/"
Vous pouvez contrôler l'accès à des processus et des tables de décision spécifiques dans Operate et Tasklist avec une autorisation basée sur les ressources.
Cette fonctionnalité est désactivée par défaut et peut être activée en définissant RESOURCE_AUTHORIZATIONS_ENABLED
sur true
, soit via le fichier .env
, soit via la ligne de commande :
RESOURCE_AUTHORIZATIONS_ENABLED=true docker compose up -d
Vous pouvez utiliser la multilocation pour obtenir une isolation basée sur les locataires.
Cette fonctionnalité est désactivée par défaut et peut être activée en définissant MULTI_TENANCY_ENABLED
sur true
, soit via le fichier .env
, soit via la ligne de commande :
ZEEBE_AUTHENICATION_MODE=identity MULTI_TENANCY_ENABLED=true docker compose up -d
Comme vu ci-dessus, la fonctionnalité nécessite également que vous utilisiez identity
comme fournisseur d'authentification.
Assurez-vous de configurer l’identité des locataires après avoir démarré la plateforme.
Vous recherchez des informations sur Camunda Platform 7 ? Consultez les liens ci-dessous :