Install Flowable with Docker | How-To | Flowable
Summary
TLDRIn this tutorial, Valentin Signer guides viewers through setting up Flowable with Docker. Starting with logging into the Flowable Artifactory, the video covers creating a Docker Compose YAML file, using Flowable's Docker images, and configuring services like PostgreSQL and Elasticsearch. It demonstrates deploying a simple 'Hello World' process in Flowable Work and Design, and managing it via Global Control, providing a comprehensive introduction to Flowable's Docker-based environment.
Takeaways
- π The video is a tutorial on how to start Flowable with Docker, presented by Valentin Signer.
- π It begins with instructions on logging into the Flowable Artifactory using Docker login command.
- π The tutorial guides viewers to create a Docker Compose YAML file by copying information from the documentation.
- π₯οΈ The video explains how to use `docker compose up -d` to create containers, volumes, and start them in the background.
- π It highlights the importance of checking the documentation for Docker and Flowable usage.
- ποΈ The script mentions the option to generate an API key for the Flowable Artifactory instead of using a password directly for login.
- π Lists the different Docker images available for Flowable, including Flowable Work, Flowable Design, and Flowable Engage.
- π The video describes the use of volumes to persist data across container restarts and removals.
- π It explains the configuration of Elasticsearch as a search engine within Flowable, including its dependency on the database.
- π οΈ The script provides details on the Docker Compose file sections for database, Elasticsearch, Flowable Work, Flowable Design, and Global Control.
- π The tutorial includes steps to upload a license file for Flowable Design and create a new demo app with a simple process.
- π The video demonstrates the process of modeling a 'Hello World' process, publishing it, and starting an instance in Flowable Work.
- π Lastly, it shows how to use the Global Control application to view process instances and definitions.
Q & A
What is the purpose of the video?
-The video is a tutorial on how to start Flowable with Docker, guiding viewers through configuring their local Docker to connect to the global Artifactory and use Flowable Docker images in their local environment.
How do you log in to the Flowable Artifactory?
-To log in to the Flowable Artifactory, you type 'docker login artifacts.global.com', enter your username that typically ends with 'addbots.flowable.com', and then enter your password.
What is the next step after logging in to the Flowable Artifactory?
-After logging in, you create a Docker Compose YAML file using an editor of your choice and copy and paste information from the Flowable documentation.
What command is used to start the Docker containers?
-The command 'docker compose up -d' is used to create the containers, volumes, and start them in the background.
What is the purpose of using a Docker Compose file?
-A Docker Compose file is used to define and run multi-container Docker applications, making it easier to configure and start the necessary services.
What is the role of the API key in the Flowable Artifactory?
-The API key can be used instead of your password for logging in to the Flowable Artifactory, offering an additional layer of security by not storing your password directly.
What are the different Docker images available for Flowable?
-The available Docker images include Flowable Work, Flowable Design, and Flowable Engage, which provide different capabilities such as process modeling and administration.
Why is a volume used for the database in the Docker Compose file?
-A volume is used to store the database data persistently, ensuring that the data is not lost when the container is removed.
What is the significance of Elasticsearch in the Flowable setup?
-Elasticsearch is used as the search engine within Flowable, helping to index and search process instances and other data.
How can additional custom JAR files be used with Flowable Docker images?
-Additional custom JAR files can be mounted into the Docker images by specifying a directory in the Docker Compose file, allowing customization of the environment.
What is the purpose of the 'restart' policy in the Docker Compose file?
-The 'restart' policy is configured to automatically restart the Flowable application if it fails to start due to missing dependencies, ensuring the service is up and running.
How do you upload a license file to Flowable Design?
-After logging in to Flowable Design with the default credentials, you can upload a license file when prompted, or you can do so manually through the application interface.
What is the default port for accessing Flowable Design?
-The default port for accessing Flowable Design is 8091.
How can you create a new process in Flowable Design?
-In Flowable Design, you can create a new process by selecting the 'New' option, choosing 'Demo App', and then creating a new BPMN process with the desired elements such as start and end events, and user tasks.
What is the purpose of the 'publish' button in Flowable Design?
-The 'publish' button in Flowable Design is used to deploy the designed process to the Flowable Work environment, making it available for execution.
How can you start a new process instance in Flowable Work?
-In Flowable Work, after logging in, you can start a new process instance by selecting 'New' and then choosing the process you want to start.
What is the role of the Flowable Control application?
-Flowable Control provides an administrative view where you can monitor and manage process instances, re-trigger processes, and perform other administrative tasks.
What are the default credentials for accessing Flowable Work and Flowable Control?
-The default credentials for accessing both Flowable Work and Flowable Control are 'admin' for the username and 'test' for the password.
Outlines
π Getting Started with Flowable and Docker
This paragraph introduces the video tutorial on setting up Flowable with Docker, presented by Valentin Signer. The focus is on configuring a local Docker environment to connect with a global Artifactory and utilizing Flowable Docker images. The process begins with logging into the Flowable Artifactory using Docker login credentials. Subsequently, a Docker Compose YAML file is created by copying information from the Flowable documentation. The video will guide viewers through the contents of this file and the use of 'docker compose up -d' to start the containers in the background. It also mentions the possibility of generating an API key for the Artifactory instead of using a password directly, which adds an extra layer of security.
π Understanding Docker Compose YAML Configuration
This section delves into the Docker Compose YAML file's structure, explaining the different sections and their purposes. It starts with the database configuration, which uses a PostgreSQL database, and details how to set up the database with a username and password. The importance of volumes for data persistence is highlighted to prevent data loss when containers are removed. The paragraph then moves on to Elasticsearch, which is used as the search engine within Flowable, and its configuration, including data persistence. Flowable Work and Global Work are introduced as the next sections, with instructions on how to configure them, including setting up the content storage volume and the order of service dependencies. The restart policy for containers is also discussed to ensure that applications restart if they fail to start due to missing dependencies.
π οΈ Exploring Flowable Applications and Licensing
The final paragraph covers the setup and use of Flowable applications, starting with Global Design, which is a modeling environment that connects to Global Work. It explains how to configure internal hostnames, deployment API URLs, and the importance of exposing certain ports for these services. The paragraph also touches on the need to upload a license file for Flowable Design and provides guidance on how to do so. The process of creating a new demo app and a simple 'Hello World' process within the app is demonstrated, including the steps to save and publish the process. The video concludes with a brief mention of Global Control, which offers an administrative view for managing processes, and encourages viewers to explore additional videos for more information on using Flowable.
Mindmap
Keywords
π‘Flowable
π‘Docker
π‘Docker Compose
π‘Artifactory
π‘Elasticsearch
π‘Postgres
π‘API Key
π‘Flowable Work
π‘Flowable Design
π‘Global Control
π‘BPMN
Highlights
Introduction to configuring local Docker for Flowable with Valentin Signer.
Logging into Flowable Artifactory using Docker.
Creating a Docker Compose YAML file from documentation.
Using Docker Compose to start containers and volumes.
Exploring the Docker Compose file's contents and structure.
Storing Docker login credentials securely in the key store.
Listing available Flowable Docker images and their uses.
Customizing Docker images with additional JAR files.
Database configuration in Docker Compose for Flowable.
Setting up Elasticsearch as a search engine for Flowable.
Managing content storage with Docker volumes.
Dependencies and restart policies for Docker containers.
Configuring Flowable Work and Design with internal hostnames and API URLs.
Exposing ports for Flowable Work and Design applications.
Using Global Control for administrative purposes in Flowable.
Uploading a license file for Flowable Design.
Creating and publishing a simple 'Hello World' process in Flowable.
Accessing and starting the 'Hello World' process instance in Flowable Work.
Viewing process instances and definitions in Flowable Control.
Conclusion and invitation to explore additional Flowable videos.
Transcripts
hello and welcome to this video how to
start flowable with docker i'm valentin
signer and i'm going to walk you through
how you can
configure your local docker to connect
to the global artifactory and how you
can use the flowable docker images
inside your local environment
now first to get started we actually
will need to log in to the flower
artifactory therefore we can simply type
docker login artifacts.global.com
and then as next step we need to enter
our username that typically ends with
addbots.flowable.com
once we have done that we can enter our
password and eventually we should see an
message logging succeeded
now next we can use an editor of our
choice to create a docker compose
yaml file and in that file we will for
now just simply copy and paste
information from the documentation so
when you go to
administration then installation
then install installation with docker
scroll a little bit down you will see
that docker compose file for now i'm
just going to copy it and while we then
starting up
all those different pots i'm going to
walk you through what is in there now we
will use docker compose up dash d to
basically create the container create
the volumes and so on and start it now
that is starting in the background even
if the command already returned not all
the nodes are started yet so that is
going to take a little bit
until this is done
meanwhile we can look at this
documentation here and that provides us
different information about docker and
flowable and how to use it
now first of all
there's here again the docker login
command
so you can also just copy and paste that
from here
as well as
there is the possibility to generate an
api key
inside
the flowable artifactory instead of
using
uh your password directly here to login
that has the advantage that you don't
have your password for
artifacts.flowable.com are stored
basically in there however
those are typically at least for mac and
i think as well for linux not stored
inside the local docker configuration
they are stored inside your key store so
they are encrypted most likely with your
password as well so you might not need
to care about it but anyway it's good to
know that it exists
now we have also here
a list of the different docker images
we are use
we have available so flow will work is
one we use which we use global design
and global control are
used as well flow will engage you can
use as an alternative to flowable work
it also gives you the jet capability of
global and besides of that it also
includes everything what work
includes however when you use flowable
engage you also need to have active mq
warning
all of those docker images provide you
the possibility to put or to use
additional custom jar files and
therefore you can simply mount
into the direction a directory
additional class path whatever you would
like to have
exposed there
now inside that docker compose file we
have
a few different
sections so we have database here
database
is for us a postgres database in version
14. obviously feel free to change that
to a newer supported version as well
then we have in here
the database which we would like to have
configured our username and password to
that database as well
and we have here a list of
volumes which we can use
and that volume is basically to store
the data of the database
also in case we remove that container
otherwise our data would be gone now
next in here in that list is
elasticsearch elasticsearch is basically
the search engine which is used inside
flowable that is uh here in the latest
version 7
there might be also here a newer version
available
we again use a volume
to
avoid whenever you upgrade it that
the data of elastic searches removed in
case your data gets actually removed you
can restore all that data from
elasticsearch based on your database
obviously when you lose both then you
don't have that possibility anymore
now flowable work
is the next section and global work
there's here just mentioned latest
you can also replace that with a
specific version number
in case you need to
we store all the content items which you
have uploaded inside slash content
storage which is again a volume we have
mentioned over here so even that
whenever you turn off the container or
remove that container it is still there
as long as you don't remove the volume
now here we have also elasticsearch
configured and elasticsearch is also one
of the dependencies in here so that
node is starting basically after
elasticsearch
as well as uh the database is configured
here and the database is also one of our
dependencies however that depends on
just says us that those containers are
created before it doesn't tell us that
those applications are already
completely started whenever we start our
flowable work
and that's the reason why we have here
the restart policy configured and the
reset policy just tells us that when
flow fails to start because of one of
those dependencies are missing then we
go ahead and just restart flowable
as well
now the next in that section is flowable
design and global design
is our modeling environment so that
connects to global work that's what we
have
in here in the first few lines so that's
how you set that up here we have the
internal hostname
which is basically the name of the
service over here
we configure that we would like to have
uh the deployment api url and the
undeployment ap uil
so that tells us that we are able to
press the publish button in flowable
design and as well the unpublished
button
we have here just the database
configured without elastic searches of
global design does not need to have
elastic search and that i should have
mentioned also before for work we expose
the part here for global work to 8090
and for flowable design we expose it to
8091
and it depends again on our database
now global control
itself is the last of the three flowable
applications we are using right now
global control is also in the latest
version um we configure it to connect to
work
and we also have the database in here
global control gives us an admin view so
it's more like for administrative
purpose you can also re-trigger some
things like drops in there and so on uh
that is exposed to 1892.
now there are a lot of properties in
here and for an entire list of the
properties you can just look here
uh on below properties there you have a
list there and also just check out the
release notes where you have specific
version numbers which you can put in
here instead of
latest
now let's go first to flow will design
since we still need to upload our
license file so
therefore we can just open a localhost
1891
and here we can sign in with the
username admin and the password test
and once we sign in it's actually going
to ask us
if we would like to upload the flowable
license
there we can just say yeah we would like
to do so
and then global design refresh with a
license
in case you do not have a license yet
you can either use the license from the
enterprise trial in case you have that
one or you can reach out to your contact
at flow
now here we have the possibility to
create new apps
so we could just create a new demo app
and in that demo app we can create a new
simple process so let's just call that
hello world
and here i will quickly just
model modeler process uh just as a mine
reminder here on the left side you have
the
um different uh stencils available
inside the bpmn context here in the
middle we have the canvas where we can
draw something and on the right side we
have all the properties here at the top
you have a toolbar where we can save on
the left side and later on publish on
the right side
now i select the start event and then
i'm going to make an end event over here
i will drag and drop the user task here
call that hello world
and once that is done i'm going to save
this one and then i'm going to publish
it to my flowable work installation
now that is published and so i can go
now to 8090
and um over here i need to sign in again
with the username admin and the password
test
once i signed in i have the possibility
in here to press new
and save work and that basically now
allows me to start my hello world
process so i have now my first hello
world process instance in here
last but not least we also have the
global control application so let's go
to flow over control
again the default credentials here are
the same as well username admin and
password test
and
we have several options in here
and one of them is processes where we
can look at our instances
and in that list we see now for example
our hello world process definition here
as well
now that's already it from my side so
everything is started you can use those
flowable applications
just with docker compose as mentioned
here
please check out our additional videos
we have done which also explain you what
you can then do with lobel and thank you
for watching this video see you next
time
Browse More Related Video
Creating a Hello World Application | How-to | Flowable
Docker Setup for Local WordPress Development
#03 π» Membuat Project Laravel Baru menggunakan Docker Container
First Experience with Flowable | How-To | Flowable
How to Run a Python Docker Image on AWS Lambda
F1TENTH T01 - Tutorial on Docker and ROS2
5.0 / 5 (0 votes)