Skip to content

Deployment types ​

Since agola is composed of multiple components you can deploy it in many different ways based on your requirements and scaling needs. Here some examples:

Prerequisites ​

  • A database
    • PostgreSQL.
    • sqlite3 (can be used only for single instance deployments)
  • An object storage:
    • A posix shared fs like nfs or cephfs
    • A S3 based storage

Create a configuration file with the correct entries to your database, objectstorage and components config (see the configuration reference)

High available with N executors ​

Start all the management components (except executor) ​

agola serve --config ./config-localhost.yml --components all-base

You can have N instances of all the base components for high availability and scaling (with the current exclusion of the git server used for user direct runs that is currently a single instance so only one of the n started will be used based on the gateway gitserverURL setting in your config file)

Start the executors ​

On every "executor" machine:

agola serve --config ./config-localhost.yml --components executor