Sign inSign up

zwiron/agent

By zwiron

•Updated about 2 months ago

Official Zwiron outbound-only data-movement agent

Image
Integration & delivery
1

2.7K

zwiron/agent repository overview

⁠zwiron/agent

Official Zwiron outbound-only data-movement agent.

Run sync next to your databases — private VPC, on-prem, or any network where row data must stay local. The agent dials out to Zwiron’s control plane over mTLS. No inbound ports, VPN hairpin, or firewall holes required.


⁠Quick start

docker pull zwiron/agent:latest

docker run -d \
  --name zwiron-agent \
  --restart unless-stopped \
  -v zwiron-agent-data:/data \
  -e ZWIRON_TOKEN=<YOUR_TOKEN> \
  zwiron/agent:latest
  1. Create an agent token in the Zwiron app: Settings → Agents → New Agent
  2. Start the container with that token
  3. Confirm the agent shows online in the UI
  4. Create connections with Agent execution and select this agent

⁠Supported tags

Multi-arch: linux/amd64 · linux/arm64

TagUse
latestNewest stable release
0.12.30Pin an exact version (recommended in production)
0.12Latest patch on the 0.12 line
0Latest 0.x
v0.12.30Git-tag mirror

Prefer an exact version tag in production. Rebuild/redeploy when you intentionally upgrade.

docker pull zwiron/agent:0.12.30

⁠Configuration

VariableRequiredDefaultDescription
ZWIRON_TOKENYes—One-time install token from Settings → Agents
ZWIRON_DATA_DIRNo/dataPersistent keys, certs, checkpoints
ZWIRON_ADDRNogrpc.zwiron.com:39928Control-plane address (leave unset — production default)
ZWIRON_MAX_JOBSNo0 (unlimited)Cap concurrent jobs on this agent
ZWIRON_METRICS_PORTNo9091Prometheus metrics listen port
⁠Volumes
PathPurpose
/dataRequired for production. RSA keys and checkpoint DB. Lose this volume and the agent must be re-registered.
⁠Ports
PortPurpose
9091/tcpOptional Prometheus /metrics (agent dials out to grpc.zwiron.com:39928; no inbound API)

Example with metrics published to the host:

docker run -d \
  --name zwiron-agent \
  --restart unless-stopped \
  -v zwiron-agent-data:/data \
  -p 9091:9091 \
  -e ZWIRON_TOKEN=<YOUR_TOKEN> \
  zwiron/agent:latest

⁠Kubernetes

apiVersion: apps/v1
kind: Deployment
metadata:
  name: zwiron-agent
  namespace: zwiron
spec:
  replicas: 1
  selector:
    matchLabels:
      app: zwiron-agent
  template:
    metadata:
      labels:
        app: zwiron-agent
    spec:
      containers:
        - name: agent
          image: zwiron/agent:0.12.30
          env:
            - name: ZWIRON_TOKEN
              valueFrom:
                secretKeyRef:
                  name: zwiron-agent-secret
                  key: token
          volumeMounts:
            - name: agent-data
              mountPath: /data
      volumes:
        - name: agent-data
          persistentVolumeClaim:
            claimName: zwiron-agent-pvc

⁠What this image is (and isn’t)

Is: a long-running worker that executes full / incremental / CDC syncs for connections assigned to it.

Isn’t: the Zwiron control plane, UI, or hosted worker. Cloud-reachable sources can use Hosted mode with nothing to install — use the agent only when the network or compliance requires it.


⁠Native install (non-Docker)

Prefer a system service on the host?

curl -fsSL https://get.zwiron.com | sudo sh
sudo zwiron-agent install --token <YOUR_TOKEN>

Binaries and checksums: downloads.zwiron.com⁠


⁠Support

© Zwiron. All rights reserved.

Tag summary

Content type

Image

Digest

sha256:58c389c2f…

Size

40.2 MB

Last updated

about 2 months ago

docker pull zwiron/agent