Semaphore containerization - conrad-blucher-institute/semaphore GitHub Wiki

3 Containers

  1. Semaphore.Core : executes neural net models to generate and store predictions
  2. Semaphore.API: hosts a REST API to allow external systems to query for Semaphore data (ingested and generated)
  3. Semaphore.Database: hosts the semaphore database to persist semaphore data

1. Semaphore.Core

  1. Source image as TensorFlow 2.13
  2. Python V.3.10
  3. Activate environment
  4. Copy requirements.txt and install dependencies
  5. On run read host VM .env vars (environment in the yml file)
  6. Copy Semaphore Source Code to container image
  7. Port mapping to host network?
  8. Volumes #Where are files going to live? How do we access them? 7.1. Where do we store log files? Do we pull them out? They should be persistent
  9. Install cronjob appropriately. Host machine or container?

2. Semaphore.API

3. Semaphore.Database