# Conflicts: # api/v1alpha1/casting.go # api/v1alpha1/installation/signoz.go # docs/casting.md # docs/examples/docker/compose/pours/deployment/configs/ingester/opamp.yaml # docs/examples/systemd/binary/pours/deployment/signoz-ingester.service # docs/examples/systemd/binary/pours/deployment/signoz-signoz.service # docs/examples/systemd/binary/pours/deployment/signoz-telemetrystore-migrator.service # docs/schemas/v1alpha1.yaml # internal/foundry/registry.go # internal/instrumentation/handler.go # internal/molding/signozmolding/signoz.go
Docker Swarm
| Field | Value |
|---|---|
| Mode | docker |
| Flavor | swarm |
| Platform | - |
Overview
Deploys SigNoz on a Docker Swarm cluster. Foundry generates a Compose file and deploys it as a stack using docker stack deploy.
Prerequisites
- Docker Engine 20.10+ with Swarm mode initialized (
docker swarm init) - At least one manager node
Configuration
apiVersion: v1alpha1
metadata:
name: signoz
spec:
deployment:
flavor: swarm
mode: docker
Deploy
foundryctl cast -f casting.yaml
Or step by step:
# Generate the compose file
foundryctl forge -f casting.yaml
# Deploy manually
docker stack deploy -c pours/deployment/compose.yaml signoz
Generated output
pours/deployment/
compose.yaml
configs/
ingester/
ingester.yaml
opamp.yaml
telemetrykeeper/
clickhousekeeper/
keeper-0.yaml
telemetrystore/
clickhouse/
config.yaml
functions.yaml
After deployment
# List services in the stack
docker stack services signoz
# View logs for a service
docker service logs signoz_signoz -f
# Remove the stack
docker stack rm signoz
Customization
For platform-level changes to the generated compose.yaml, use patches.