Skip to content

Installation

Charles d'Avernas edited this page Aug 13, 2024 · 8 revisions

This guide provides step-by-step instructions for setting up Synapse on your local machine or in a cloud environment. Synapse can be deployed using Docker, Kubernetes, or directly on your system using the provided .NET binaries.

Prerequisites

Before you begin, ensure you have the following software installed:

  • Docker (for containerized deployment)
  • Kubernetes (optional, for deploying in a Kubernetes cluster)
  • Git (to clone the repository)
  • .NET 8.0 SDK (for running the Synapse services directly)
  • synctl CLI (for managing workflows from the command line)

Installation Methods

1. Docker Compose

The easiest way to get started with Synapse is by using Docker Compose. This method allows you to run all Synapse components as Docker containers.

Steps:

  1. Clone the Synapse Repository:

    git clone https://github.com/serverlessworkflow/synapse.git
  2. Navigate to the Docker Compose directory:

    cd synapse/deployments/docker-compose
  3. Build the Docker images:

    docker-compose build
  4. Start the Synapse services:

    docker-compose up

This will start the Synapse services as defined in the docker-compose.yml file. The API server and other components will be accessible according to the configuration in this file.

2. Kubernetes

For deploying Synapse in a Kubernetes cluster, you can use the provided Helm chart or YAML configurations.

Steps:

  1. Install Helm (if not already installed):

    curl https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3 | bash
  2. Add the Synapse Helm repository:

    helm repo add synapse https://serverlessworkflow.github.io/synapse/charts
  3. Install Synapse using Helm:

    helm install synapse synapse/synapse
  4. Verify the installation:

    kubectl get pods -n synapse

This will deploy Synapse components within your Kubernetes cluster. You can customize the installation using Helm values.

3. Running with .NET Binaries

You can also run Synapse directly using the provided .NET binaries. This method requires the .NET 8.0 runtime environment.

Steps:

  1. Download the latest release:

    Visit the Synapse releases page and download the appropriate binaries for your system.

  2. Extract the binaries:

    tar -xzf synapse-<version>.tar.gz
    cd synapse-<version>
  3. Run the Synapse API Server:

    dotnet Synapse.Api.Server.dll
  4. Run other components as needed:

    You can start other components (e.g., Operator, Correlator) similarly by running their respective .dll files:

    dotnet Synapse.Operator.dll

4. Using the synctl CLI

The synctl CLI allows you to interact with the Synapse API from the command line. Here's how to set it up:

Steps:

  1. Download synctl:

    Download the synctl binary from the Synapse releases page.

  2. Make the binary executable:

    chmod +x synctl
  3. Set up the Synapse API server:

    synctl config set-api default -server=http://localhost:8080

You can now use synctl to create, manage, and run workflows.

Next Steps

Troubleshooting

If you encounter any issues during installation, check the troubleshooting guide or visit the discussions page for help from the community.

Clone this wiki locally