Skip to content

Install DTaaS on localhost

The installation instructions provided in this README are ideal for running the DTaaS on both localhost. This installation is ideal for single users intending to use DTaaS on their own computers.

Design

An illustration of the docker containers used and the authorization setup is shown here.

Traefik OAuth

Requirements

The installation requirements to run this docker version of the DTaaS are:

  • docker desktop / docker CLI with compose plugin
  • User account on gitlab.com

Tip

The frontend website requires authorization. The default authorization configuration works for gitlab.com. If you desire to use locally hosted gitlab instance, please see the client docs.

Clone Codebase

git clone https://github.com/INTO-CPS-Association/DTaaS.git
cd DTaaS

Tip

  1. The filepaths shown here follow POSIX convention. The installation procedures also work with Windows paths.
  2. The description below refers to filenames. All the file paths mentioned below are relatively to the top-level DTaaS directory.

Configuration

Docker Compose

The docker compose configuration is in deploy/docker/.env.local; it is a sample file. It contains environment variables that are used by the docker compose files. It can be updated to suit your local installation scenario. It contains the following environment variables.

Edit all the fields according to your specific case.

URL Path Example Value Explanation
DTAAS_DIR '/home/Desktop/DTaaS' Full path to the DTaaS directory. This is an absolute path with no trailing slash.
username1 'user1' Your gitlab username

Tip

Important points to note:

  1. The path examples given here are for Linux OS. These paths can be Windows OS compatible paths as well.
  2. The client configuration file is located at deploy/config/client/env.local.js. If you are following the guide to use HTTPS on localhost, edit the URLs in this file by replacing http with https. Beyond this, it is not necessary to modify this file.

Create User Workspace

The existing filesystem for installation is setup for user1. A new filesystem directory needs to be created for the selected user.

Please execute the following commands from the top-level directory of the DTaaS project.

cp -R files/user1 files/username

where username is the selected username registered on https://gitlab.com.

Run

The commands to start and stop the appliation are:

docker compose -f compose.local.yml --env-file .env.local up -d
docker compose -f compose.local.yml --env-file .env.local down

To restart only a specific container, for example `client``

docker compose -f compose.local.yml --env-file .env up -d --force-recreate client

Use

The application will be accessible at: http://localhost from web browser. Sign in using your https://gitlab.com account.

All the functionality of DTaaS should be available to you through the single page client now.

Limitations

The library microservice is not included in the localhost installation scenario.

References

Image sources: Traefik logo, ml-workspace, reactjs, gitlab