Wexflow is an incredible free, open-source, high-performance, extensible, modular, and cross-platform workflow engine that is specially built for automation. It’s a tool that helps you to easily automate workflows with recurring tasks. You can read more about it here. In this “how-to” I’ll show you how you can install a Wexflow server on Ubuntu 18.04 using Docker compose.
To set the hostname login with ssh via a terminal server and run the following commands:
$ hostnamectl set-hostname hostname
Add the following line to the hosts file:
$ sudo nano /etc/hosts
127.0.1.1 hostname.domainname.extention hostname
$ sudo reboot now
Update your system and reboot
$ sudo apt-get clean && sudo apt-get -y autoremove && sudo apt-get -y update && sudo apt-get -y dist-upgrade –fix-missing && sudo sync && sudo reboot now && sudo reboot now
Install Docker and docker-compose
$ sudo apt-get install docker.io
$ sudo systemctl start docker
$ sudo systemctl enable docker
$ sudo snap install docker
$ sudo reboot now
Prepare your server for Wexflow docker installation
$ mkdir wexflow-5.4
$ cd wexflow-5.4
$ nano ./docker-compose.yml
=== Add Lines below ===
version: “3”
services:
wexflow-backend:
image: danjellz/http-server
ports:
– 8011:8011
volumes:
– ./wexflow-5.4-linux-dotnet-core/Backend:/public
command:
http-server –cors -p 8011
wexflow:
image: mcr.microsoft.com/dotnet/core/sdk:3.1-alpine
ports:
– 8000:8000
volumes:
– ./wexflow-5.4-linux-dotnet-core/:/opt/wexflow/
working_dir: /opt/wexflow/Wexflow.Server
command:
sh -c “cd /opt/wexflow/Wexflow.Server && dotnet Wexflow.Server.dll”
=== Add Lines above ===
Download the file wexflow-5.4-linux-dotnet-core.zip
$ wget https://github.com/aelassas/Wexflow/releases/download/v5.4/wexflow-5.4-linux-dotnet-core.zip
Install unzip
$ sudo apt-get install unzip
Unzip Wexflow package.
$ unzip ./wexflow-5.4-linux-dotnet-core.zip
Move it to the right folder.
$ mv ./wexflow ./wexflow-5.4-linux-dotnet-core
Wexflow docker installation
$ sudo docker-compose up
Make the Wexflow services reboot persistent
Logon to your host using a different terminal and enter the following command to list all docker container_id s:
$ sudo docker ps -a
Now make them restart after reboot by for each container entering:
sudo docker update –restart unless-stopped container_id
Reboot your system
$ sudo reboot now
Navigate in a web browser to http://localhost:8011 to access the backend
Navigate in a web browser to http://localhost:8000 to access the Swagger UI
The default credentials are:
Username: admin
Password: wexflow2018
And you are ready to use Wexflow!
Suggestions for improving this article are welcome, please let me know and drop me a line .