Teanga is a command-line tool that automates and facilitates using sequences of containerized rest api as a workflow. It aims at creation of complex Natural Language Processing workflows using Airflow, OpenAPI specification and docker.
If you have wget command installed in your terminal:
wget -O - https://raw.githubusercontent.com/Pret-a-LLOD/teanga/master/CLI/install.sh | sudo bash
If you have curl command installed in your terminal:
curl https://raw.githubusercontent.com/Pret-a-LLOD/teanga/master/CLI/install.sh | sudo bash
- docker
- access to docker.sock file
- some default PORTS should be free: 8080 8000:8000+{numbers_of_services}
Teanga backend is the core component of Teanga which coordinates a sequence of services(implemented as docker containers) by matching input and output based on services dependencies.
This repository contains three different parts:
- Teanga-backend core
- use this folder if you want to build teanga-backend from scratch
- Teanga-backend services
- if you want create teanga-services use this repo to see templates examples
- Teanga CLI (cli):
- use this repo if you want to use pre-built teanga docker image in a workflow you have
git clone https://gitlab.insight-centre.org/berste/teanga-dev ./teanga
cd ./teanga/teanga-client
source docker-run.sh
Then airflow should be accessible at http://localhost:8080 , With a example Teanga workflow.
git clone https://gitlab.insight-centre.org/berste/teanga-dev ./teanga
cd ./teanga/teanga-core
docker build -t teanga_backend:v0.0.1 .
docker run -dt --rm --name teanga_backend \
-v /var/run/docker.sock:/var/run/docker.sock \
-v $PWD/workflows:/teanga/workflows \
-v $PWD/OAS:/teanga/OAS \
-e TEANGA_DIR=$PWD \
-p 8080:8080 \
teanga_backend:v0.0.1
- then acess webserver (localhost:8080)
- You need to have a
workflows/
folder containing the workflows you want to run in the directory you are executing the last command ( the docker run command)