diff --git a/examples/deploy/kafka-job-adapter/README.md b/examples/deploy/kafka-job-adapter/README.md new file mode 100644 index 0000000000..b10967ac77 --- /dev/null +++ b/examples/deploy/kafka-job-adapter/README.md @@ -0,0 +1,4 @@ +Service script pattern in Windmill +================================== + +See [Blog Post](https://www.windmill.dev/blog/service-script-kafka) diff --git a/examples/deploy/kafka-job-adapter/docker-compose.yml b/examples/deploy/kafka-job-adapter/docker-compose.yml new file mode 100644 index 0000000000..f5c2c08efe --- /dev/null +++ b/examples/deploy/kafka-job-adapter/docker-compose.yml @@ -0,0 +1,57 @@ +version: "3.7" + +services: + zookeeper: + image: zookeeper + + kafka: + image: ubuntu/kafka + environment: + - TZ=UTC + - ZOOKEEPER_HOST=zookeeper + - ZOOKEEPER_PORT=2181 + depends_on: + zookeeper: + condition: service_started + db: + image: postgres:14 + volumes: + - db_data:/var/lib/postgresql/data + environment: + POSTGRES_PASSWORD: changeme + POSTGRES_DB: windmill + healthcheck: + test: ["CMD-SHELL", "pg_isready -U postgres"] + interval: 10s + timeout: 5s + retries: 5 + + windmill_server: + image: ghcr.io/windmill-labs/windmill:main + deploy: + replicas: 1 + ports: + - 8000:8000 + environment: + - DATABASE_URL=postgres://postgres:changeme@db/windmill?sslmode=disable + - MODE=server + depends_on: + db: + condition: service_healthy + + windmill_worker: + image: ghcr.io/windmill-labs/windmill:main + pull_policy: always + deploy: + replicas: 3 + restart: unless-stopped + environment: + - DATABASE_URL=postgres://postgres:changeme@db/windmill?sslmode=disable + - MODE=worker + - WORKER_GROUP=default + depends_on: + db: + condition: service_healthy + +volumes: + db_data: null