EnSync Engine Documentation Help

Self-host EnSync

EnSync provides public images on Docker hub which can be used on almost any container engine (OCI compliant).

EnSync Components

EnSync consists of two major components that work together to provide a complete event delivery system:

Component

Description

Key Features

Network Ports

Master Node (EnSync Node)

Core component responsible for handling all client interactions and event management operations

  • Event publishing

  • Event subscribing

  • Event pulling

  • Rollback operations

  • Event acknowledgment handling

  • 8443 (HTTP/2)

  • 8082 (HTTP/1)

Config Manager

Control plane for EnSync, providing management and configuration capabilities

  • Access control management

  • Event structure definition

  • Event workspace management

  • System settings configuration

8080 (API endpoint)


Download EnSync Service

Download compose.yml and open it.

Start EnSync Service and set Environment variables

Download engine.sh and open it.

The engine.sh script is a helper script that simplifies the process of running EnSync by:

  • Setting configurable environment variables automatically

  • Providing simple commands to manage the EnSync service:

    • Start services: ./engine.sh

    • Stop services: ./engine.sh down


HTTP/2 Configuration

For HTTP/2 connections (port 8443), EnSync requires a valid certificate for request authorization.

  • Set up a valid certificate for HTTP/2 connections

  • Configure the ENSYNC_CERT_PATH environment variable to point to your certificate file


Environment Variables

The following environment variables are used to configure EnSync:

Variable Name

Default Value

Purpose

STORAGE_DIR

Required

Specifies the storage location for event records

ENSYNC_UID

Required

User ID for the EnSync Node service

ENSYNC_GID

Required

Group ID for the EnSync Node service

ENSYNC_CERT_PATH

Required for HTTP/2

Path to the JKS signed certificate file used for HTTP/2 request authorization

ENSYNC_CLEAN_UP

200ms

Controls how frequently EnSync cleans up stored events from memory

ENSYNC_CLEAN_UP_TO

200ms

Specifies how long events can remain in the Ready-to-go Queue before being cleaned up

ENSYNC_CONFIG_MANAGER_URL

http://config-manager:8080

Defines the connection endpoint for the Config Manager service


Critical Warnings



Important Setup Requirements

Event Management Notes


Configuration Notes


Best Practices

Last modified: 13 February 2025