Operate Docker Container

Hi,

We are running zeebe on a Docker Swarm as a proof of concept together with elasticsearch and kibana for the monitoring part. We are very interessted in Operate and would like to evaluate it.

It is possible to provide an Operate Docker Container? Currently it’s unaivailable on DockerHub.

1 Like

Hi @gizmo84, thanks for your interest in Operate and for the question! We’re working on a Docker image for Operate and will have something for you soon. I’ll update here when it’s ready.

Best,
Mike

Thx @wints !

Hi @gizmo84, here you go: https://hub.docker.com/r/camunda/operate. Let us know if you run into any issues.

Best,
Mike

@wints thanks a lot for your help and for that you managed to create the image so quickly!

One little thing: on DockerHub in the Section “Run Operate” you should add the option to forward the 8080 Port: -p 8080:8080.

Here is my actual compose-file to run zeebe in Standalone mode on a Docker Swarm:

version: "3.7"

configs:
  zeebe_zeebe.conf.toml_v1:
    external: true
  zeebe_operate_application.yml_v1:
    external: true

networks:
  zeebe_network:

volumes:
  zeebe_data:
  zeebe_elasticsearch_data:

services:
  zeebe:
    image: camunda/zeebe:latest
#    environment:
#      - ZEEBE_LOG_LEVEL=debug
    ports:
      - "26500:26500"
      - "26501:26501"
    volumes:
      - zeebe_data:/usr/local/zeebe/bin/data
    configs:
      - source: zeebe_zeebe.conf.toml_v1
        target: /usr/local/zeebe/conf/zeebe.cfg.toml
    deploy:
      mode: replicated
      replicas: 1
      restart_policy:
        condition: any

  operate:
    image: camunda/operate:latest
    configs:
      - source: zeebe_operate_application.yml_v1
        target: /usr/local/operate/config/application.yml
    ports:
      - "8080:8080"

  elasticsearch:
    image: docker.elastic.co/elasticsearch/elasticsearch-oss:6.7.1
    ports:
      - "9200:9200"
    environment:
      - discovery.type=single-node
      - cluster.name=zeebe
      - "ES_JAVA_OPTS=-Xms512m -Xmx512m"
    volumes:
      - zeebe_elasticsearch_data:/usr/share/elasticsearch/data
    deploy:
      mode: replicated
      replicas: 1
      restart_policy:
        condition: any

  kibana:
    image: docker.elastic.co/kibana/kibana-oss:6.7.1
    ports:
      - "5601:5601"
    deploy:
      mode: replicated
      replicas: 1
      restart_policy:
        condition: any
2 Likes

Hi @gizmo84, thanks for the tip! We will update the README.

Here is a docker-compose configuration to start a Zeebe broker + Operate: https://github.com/jwulf/zeebe-operate-docker.

Thanks @gizmo84 for the Docker Swarm config that it’s based on!

3 Likes

I follow the updated tutorial for operate.
The only thing that’s missing seems to be the actual bpmn file used in the tutorial.
Was the file published somewhere? I pulled down the container and didn’t find it either.

Hi @snowman, I wrote the Getting Started tutorial that’s in the docs and can confirm that it doesn’t include the BPMN file for the finished model, only instructions on how to create it. It definitely makes sense to me to add a finished model to the docs, though, and I will get this into place before the next Zeebe release.

I dropped the finished model into this GitHub repository (which I’ll delete once the docs are updated): https://github.com/wints/getting-started-tutorial/tree/master/bpmn-files

Best,
Mike

2 Likes

Great info thanks :grin:

1 Like

@jwulf @wints

I noticed a nasty error in the zeebe Dokumentation. See https://docs.zeebe.io/introduction/install.html#volumes:

The default data volume is under /usr/local/zeebe/bin/data . It contains all data which should be persisted.

So I configured my docker-compose and the same seems to be documented here and here.

Now I was wondering (see my post here and here) why my cluster keeps getting out of sync with operate and why my bpmn workflows was not persisted to disk. I think I figured it out:

The right directory to be persisted is /usr/local/zeebe/data and not /usr/local/zeebe/bin/data

I edited the volume section in my compose-file to:

volumes:

  • zeebe_data:/usr/local/zeebe/data

Now the data are persisted correctly.

Can you please check if I’m right and if yes change the doc + the official compose-files?

1 Like

@gizmo84 Thanks much for flagging this–we will definitely look into it and update the docs and other resources as soon as we can if this turns out to be the issue.

Best,
Mike

1 Like

Yep, that’s an error. Thanks for catching this and reporting it @gizmo84. I’ve updated the zeebe-io/zeebe-docker-compose repo, retired the jwulf/zeebe-operate-docker, and we patched the docs.

2 Likes