Este repositório contém links para recursos da plataforma Camunda 8, os artefatos de lançamento oficial (binários) e arquivos de configuração de suporte para executar o Docker Compose como uma opção de desenvolvimento local.
Recomendamos o uso de SaaS ou Helm/Kubernetes para desenvolvimento.
Para obter mais informações sobre o autogerenciado, incluindo opções adicionais de instalação de desenvolvimento, consulte nossa documentação.
Para configurações de produção, recomendamos o uso de gráficos Helm, que podem ser encontrados em helm.camunda.io.
O arquivo docker-compose neste repositório usa a especificação de composição mais recente, que foi introduzida com docker compose versão 1.27.0+. Certifique-se de usar uma versão atualizada do docker compose.
Docker 20.10.16+ é necessário.
Para oferecer suporte à atualização e logout do token, sua máquina local precisa resolver
keycloak
para127.0.0.1
e a variávelKEYCLOAK_HOST
precisa ser definida comokeycloak
no arquivo.env
.
Para ativar localmente um ambiente autogerenciado completo da plataforma Camunda 8, o arquivo docker-compose.yaml neste repositório pode ser usado.
O ambiente completo contém estes componentes:
O Web Modeler não está incluído por padrão. Siga as instruções abaixo para instalá-lo.
Clone este repositório e emita o seguinte comando para iniciar seu ambiente:
docker compose up -d
Aguarde alguns minutos para que o ambiente inicialize e se acalme. Monitore os logs, especialmente o log do contêiner Keycloak, para garantir que os componentes foram iniciados.
Agora você pode navegar para os diferentes aplicativos da web e fazer login com a demo
de usuário e demo
de senha:
Keycloak é usado para gerenciar usuários. Aqui você pode fazer login com o usuário admin
e senha admin
O mecanismo de fluxo de trabalho Zeebe está disponível usando gRPC em localhost:26500
.
Para destruir todo o ambiente, execute o seguinte comando:
docker compose down -v
Zeebe, Operate, Tasklist e Optimize exigem uma rede separada do Identity, como você verá no arquivo docker-compose.
Se Optimize, Identity e Keycloak não forem necessários, você poderá usar docker-compose-core.yaml, que não inclui estes componentes:
docker compose -f docker-compose-core.yaml up -d
OU
Defina o parâmetro SEARCH_DB=opensearch
no arquivo .env
se desejar usar OpenSearch em vez de ElasticSearch
docker compose -f docker-compose-core.yaml --profile opensearch up -d
Além da configuração do ambiente local com docker compose, use o Camunda Desktop Modeler para modelar localmente diagramas BPMN para execução e implantá-los diretamente em seu ambiente local. Como cliente corporativo, você pode usar o Web Modeler.
Comentários e atualizações são bem-vindos!
Por padrão, a API Zeebe GRPC é acessível publicamente sem exigir quaisquer credenciais de cliente para fins de desenvolvimento.
No entanto, você pode ativar a autenticação de solicitações GRPC no Zeebe definindo a variável de ambiente ZEEBE_AUTHENTICATION_MODE
como identity
, por exemplo, executando:
ZEEBE_AUTHENTICATION_MODE=identity docker compose up -d
ou modificando o valor padrão no arquivo .env
.
Ambos os arquivos docker-compose contêm nossos conectores prontos para uso.
Consulte o guia de instalação do Connector para obter detalhes sobre como fornecer os modelos do Connector relacionados para modelagem.
Para injetar segredos no tempo de execução do Connector, eles podem ser incluídos no arquivo connector-secrets.txt
dentro do repositório no formato NAME=VALUE
por linha. Os segredos estarão então disponíveis no tempo de execução do Connector com o formato secrets.NAME
.
Para adicionar conectores personalizados, crie uma nova imagem do Docker agrupando-os conforme descrito aqui.
Como alternativa, você pode montar novos JARs do Connector como volumes na pasta /opt/app
adicionando-os ao arquivo docker-compose. Tenha em mente que os JARs do Conector precisam trazer todas as dependências necessárias dentro do JAR.
Um perfil kibana
está disponível nos arquivos docker compose fornecidos para dar suporte à inspeção e exploração dos dados da Plataforma Camunda 8 no Elasticsearch. Ele pode ser habilitado adicionando --profile kibana
ao comando docker compose. Além dos demais componentes, esse perfil gira o Kibana. O Kibana pode ser usado para explorar os registros exportados pelo Zeebe para o Elasticsearch, ou para descobrir os dados no Elasticsearch usados pelos outros componentes (por exemplo, Operate).
Você pode navegar até o aplicativo web Kibana e começar a explorar os dados sem credenciais de login:
Nota Você precisa configurar os padrões de índice no Kibana antes de poder explorar os dados.
- Acesse
Management > Stack Management > Kibana > Index Patterns
.- Crie um novo padrão de índice. Por exemplo,
zeebe-record-*
corresponde aos registros exportados.
- Se você não vir nenhum índice, certifique-se de exportar alguns dados primeiro (por exemplo, implantar um processo). Os índices dos registros são criados quando o primeiro registro deste tipo é exportado.
- Vá para
Analytics > Discover
e selecione o padrão de índice.
O Desktop Modeler é de código aberto e de uso gratuito.
Baixe o Desktop Modeler e comece a modelar BPMN, DMN e Camunda Forms em sua máquina local.
Quando estiver pronto para implantar ou executar processos, use estas configurações para implantar na instância local do Zeebe:
None
http://localhost:26500
Se você habilitou a autenticação para solicitações GRPC no Zeebe, precisará fornecer credenciais de cliente ao implantar e executar processos:
OAuth
http://localhost:26500
zeebe
zecret
http://localhost:18080/auth/realms/camunda-platform/protocol/openid-connect/token
zeebe-api
O Web Modeler Self-Managed está disponível apenas para clientes corporativos Camunda.
As imagens Docker para Web Modeler estão disponíveis em um registro privado. Os clientes empresariais ou já possuem credenciais para este registo, ou podem solicitar acesso a este registo através do seu contacto CSM na Camunda.
Para executar a plataforma Camunda com Web Modeler Self-Managed, clone este repositório e emita os seguintes comandos:
$ docker login registry.camunda.cloud
Username: your_username
Password: ******
Login Succeeded
.env
e defina o parâmetro SEARCH_DB=elasticserach
(este valor padrão) $ docker compose -f docker-compose.yaml -f docker-compose-web-modeler.yaml up -d
ElasticSearch
execute o seguinte comando $ docker compose -f docker-compose.yaml -f docker-compose-web-modeler.yaml down -v
Se você quiser excluir tudo (incluindo todos os dados que você criou). Como alternativa, se você quiser manter os dados em execução:
$ docker compose -f docker-compose.yaml -f docker-compose-web-modeler.yaml down
Para executar a plataforma Camunda com OpenSearch
execute estes comandos
.env
e defina o parâmetro 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
Você pode acessar o Web Modeler Self-Managed e efetuar login com a demo
do usuário e demo
da senha em http://localhost:8070.
Quando estiver pronto para implantar ou executar processos, use estas configurações para implantar na instância local do Zeebe:
None
http://zeebe:26500
Se você habilitou a autenticação para solicitações GRPC no Zeebe, precisará fornecer credenciais de cliente ao implantar e executar processos:
OAuth
http://zeebe:26500
zeebe
zecret
http://keycloak:18080/auth/realms/camunda-platform/protocol/openid-connect/token
zeebe-api
A configuração inclui Mailpit como servidor SMTP de teste. Ele captura todos os emails enviados pelo Web Modeler, mas não os encaminha aos destinatários reais.
Você pode acessar e-mails na interface da Web do Mailpit em http://localhost:8075.
Ao enviar um problema neste repositório, certifique-se de que seu problema esteja relacionado ao método de implantação docker compose da plataforma Camunda. Todas as questões relativas à funcionalidade das aplicações web devem ser publicadas no Fórum Camunda. Esta é a melhor maneira para os usuários consultarem respostas existentes que outras pessoas já encontraram. Também temos uma categoria nesse fórum especificamente para tópicos relacionados à implantação.
Ao usar hardware baseado em arm64, como um Mac M1 ou M2, o contêiner Keycloak pode não iniciar porque o Bitnami fornece apenas imagens baseadas em amd64 para versões <22. Você pode construir e marcar uma imagem baseada em arm localmente usando o seguinte comando. Depois de construir e marcar a imagem, você pode iniciar o ambiente conforme descrito em Usando docker-compose.
$ DOCKER_BUILDKIT=0 docker build -t bitnami/keycloak:19.0.3 "https://github.com/camunda/camunda-platform.git#8.2.15:.keycloak/"
É possível controlar o acesso a processos e tabelas de decisão específicos no Operate e Tasklist com autorização baseada em recursos.
Este recurso está desabilitado por padrão e pode ser habilitado definindo RESOURCE_AUTHORIZATIONS_ENABLED
como true
, por meio do arquivo .env
ou pela linha de comando:
RESOURCE_AUTHORIZATIONS_ENABLED=true docker compose up -d
Você pode usar multilocação para obter isolamento baseado em locatário.
Este recurso está desabilitado por padrão e pode ser habilitado definindo MULTI_TENANCY_ENABLED
como true
, por meio do arquivo .env
ou pela linha de comando:
ZEEBE_AUTHENICATION_MODE=identity MULTI_TENANCY_ENABLED=true docker compose up -d
Conforme visto acima, o recurso também exige que você use identity
como provedor de autenticação.
Certifique-se de configurar os locatários na identidade depois de iniciar a plataforma.
Procurando informações sobre a Plataforma Camunda 7? Confira os links abaixo: