-
Notifications
You must be signed in to change notification settings - Fork 38
Installation
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.
The Docker Compose method allows you to run all Synapse components as Docker containers.
- Docker: Ensure that Docker is installed on your system. You can download it from Docker's official website.
-
Download the Docker Compose file:
wget https://raw.githubusercontent.com/serverlessworkflow/synapse/main/deployments/docker-compose/docker-compose.yml
-
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.
For development purposes, if you wish to build the Docker images yourself, follow these steps:
- Docker: Ensure that Docker is installed on your system.
- Git: You need Git to clone the repository.
-
Clone the Synapse Repository:
git clone https://github.com/serverlessworkflow/synapse.git
-
Navigate to the Docker Compose directory:
cd synapse/deployments/docker-compose
-
Build the Docker images:
docker-compose -f docker-compose.build.yml build
-
Start the Synapse services:
docker-compose -f docker-compose.build.yml up
Deploying Synapse in a Kubernetes cluster provides a robust solution for production environments.
-
Kubernetes: Ensure you have access to a Kubernetes cluster.
-
Helm: Helm must be installed to manage Kubernetes applications. You can install Helm using the following command:
curl https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3 | bash
-
Add the Synapse Helm repository:
helm repo add synapse https://serverlessworkflow.github.io/synapse/charts
-
Install Synapse using Helm:
helm install synapse synapse/synapse
-
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.
Running Synapse directly with .NET binaries allows you to run the services without Docker or Kubernetes.
- .NET 8.0 SDK: Ensure the .NET 8.0 SDK is installed on your system. You can download it from Microsoft's official website.
-
Download the latest release:
Visit the Synapse releases page and download the appropriate binaries for your system.
-
Extract the binaries:
tar -xzf synapse-<version>.tar.gz cd synapse-<version>
-
Run the Synapse API Server:
dotnet Synapse.Api.Server.dll
-
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
The synctl
CLI allows you to interact with the Synapse API from the command line.
-
synctl
CLI: Download thesynctl
binary from the Synapse releases page.
-
Make the binary executable:
chmod +x synctl
-
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.
- Quick Start Guide: Learn how to create and run your first workflow.
- API Documentation: Explore the API endpoints and how to use them.
If you encounter any issues during installation, check the troubleshooting guide or visit the discussions page for help from the community.