Deployment
Golem Services are distributed as Docker images. They are available in Golem Services Docker Hub . Each Docker image is built for the following architectures:
- linux/amd64
- linux/arm64
The services are using the following storage backends:
- Relational Database (RDB) - PostgreSQL or SQLite (for running locally)
- Redis
- Blob storage - Shared File System or S3
Golem Services
The following sections provide a description of each service.
Cloud Service
cloud-service is responsible for storing entities like projects and accounts in RDB.
See also: configuration , environment variables , docker image
Component Service
golem-component-service is a component registry/management service. The service is using RDB and Blob storage as data storage.
See also: configuration , environment variables , docker image
Debugging Service
golem-debugging-service is a special executor for running debugging sessions, controlling the execution of agents step by step.
See also: configuration , environment variables , docker image
Worker Service
golem-worker-service provides APIs and API Gateway functionality for agents and acts as a routing service for worker executors. The service uses an RDB as data storage.
See also: configuration , environment variables , docker image
Worker Executor
golem-worker-executor is responsible for running the agents that belong to assigned shards. The service uses Redis and Blob storage as data storage.
See also: configuration , environment variables , docker image
Shard Manager
golem-shard-manager is a single node in charge of maintaining the worker executors’ shard assignments; only one instance can be alive at any given time. The service uses Redis as data storage. See also: configuration , environment variables , docker image
Component Compilation Service
golem-component-compilation-service is a sidecar service responsible for compiling components. The service uses Blob storage as data storage.
See also: configuration , environment variables , docker image
Golem Router
golem-router is an Nginx proxy for Golem APIs.
See also: configuration , docker image
Deployment Variants
For deployment variants, see the following sections: