Skip to content
Sebi1006 edited this page Jun 23, 2021 · 12 revisions

You can install and run Zeta fully automized via Docker Compose. This is the preferred way. First you have to install Docker with Docker Compose:


Note: If you are using Docker on Windows or Mac, you must allocate at least 3 to 4 GB of memory to the Docker machine.


  1. Install Docker (tested with Docker version 1.12.3)
  2. Manage Docker as a non-root user
  3. Install Docker Compose

After installation you have to checkout this repository on your local system.

Services

List of Docker Compose services:

  • images: Build generator images
  • api: Webpage, Auth, REST API, ...
  • mongodb: NoSQL database
  • webapp: Web application for generators

Getting Started

To build the webapp container, you have to set the repository environment first. At first, you have to create a developer token with your GitHub account.

  1. Login on the GitHub page.
  2. Navigate to your accout settings.
  3. Under Developer settings create a personal access token.
  4. Select the repo scope and push the Generate new token button at the bottom of the page.
  5. Copy your token and keep it secret.
  6. To set the env variable, there are two ways to do this:
  • Create in the root folder of the repository the .env file and insert the token like TOKEN=<Your token>.
  • Set the env variable for your shell session. On Unix systems use export TOKEN=<Your token>.

Now you can create the frontend container with docker-compose build or specific for the frontend docker-compose build webapp.


Note: temporarily not used!

Generation works without docker!

(First, all Docker images need to be build.)

docker-compose up images

To start all services simply run the below command.

docker-compose up -d api

On the first run this can take up to 30 min (thx to SBT). After this time Zeta is available via localhost.

Error Handling

If MongoDB is failing to start with an error connected to WiredTiger, check out this post: https://stackoverflow.com/questions/54911021/unable-to-start-docker-mongo-image-on-windows

The problem should be fixed after modifying the docker-compose file. Maybe you have to create a docker volume "mongodata" first.

Create a Generator

Two steps are required to create a generator.

  1. Create a Docker Image: First you need to create a Docker image for the execution of a generator. A few examples can be found in the images directory. An example how to build an image can be found in createDockerImages.sh, which is primarly used by the images service (docker-compose).

  2. Make the Docker Image available: After an image was created we need to create a document in the database which links to the Docker image. The created document will make the previous created Docker image available for users.