Initial import of verae-ops from zapier monorepo
This commit is contained in:
commit
1561c4ee80
13 changed files with 690 additions and 0 deletions
157
docker-compose.yml
Normal file
157
docker-compose.yml
Normal file
|
|
@ -0,0 +1,157 @@
|
|||
# Lab / small-prod. NATS stays on the internal network (not published).
|
||||
# Usage:
|
||||
# MONOREPO=/path/to/master-zapier-plan-draft docker compose up --build
|
||||
# or clone sibling repos next to this directory.
|
||||
|
||||
x-node: &node
|
||||
restart: unless-stopped
|
||||
networks: [verae]
|
||||
|
||||
services:
|
||||
nats1:
|
||||
image: nats:2.10-alpine
|
||||
command:
|
||||
- "--js"
|
||||
- "--http_port=8222"
|
||||
- "--cluster=nats://0.0.0.0:6222"
|
||||
- "--cluster_name=verae"
|
||||
- "--routes=nats://nats2:6222,nats://nats3:6222"
|
||||
- "--name=nats1"
|
||||
networks: [verae]
|
||||
restart: unless-stopped
|
||||
|
||||
nats2:
|
||||
image: nats:2.10-alpine
|
||||
command:
|
||||
- "--js"
|
||||
- "--cluster=nats://0.0.0.0:6222"
|
||||
- "--cluster_name=verae"
|
||||
- "--routes=nats://nats1:6222,nats://nats3:6222"
|
||||
- "--name=nats2"
|
||||
networks: [verae]
|
||||
restart: unless-stopped
|
||||
|
||||
nats3:
|
||||
image: nats:2.10-alpine
|
||||
command:
|
||||
- "--js"
|
||||
- "--cluster=nats://0.0.0.0:6222"
|
||||
- "--cluster_name=verae"
|
||||
- "--routes=nats://nats1:6222,nats://nats2:6222"
|
||||
- "--name=nats3"
|
||||
networks: [verae]
|
||||
restart: unless-stopped
|
||||
|
||||
zappier-edge:
|
||||
<<: *node
|
||||
build:
|
||||
context: ${MONOREPO:-..}/packages/zappier
|
||||
dockerfile: Dockerfile
|
||||
environment:
|
||||
PORT: "3000"
|
||||
ZAPPIER_UPSTREAM: http://middleware:3100
|
||||
ports:
|
||||
- "3000:3000"
|
||||
|
||||
customer-service:
|
||||
<<: *node
|
||||
image: node:22-alpine
|
||||
working_dir: /app
|
||||
volumes:
|
||||
- ${MONOREPO:-..}/packages/zappier-customer-service:/app
|
||||
command: ["node", "src/server.js"]
|
||||
environment:
|
||||
PORT: "3011"
|
||||
ZAPPIER_ADMIN_URL: http://zappier-edge:3000
|
||||
ports:
|
||||
- "3011:3011"
|
||||
depends_on: [zappier-edge]
|
||||
|
||||
sales-pricing:
|
||||
<<: *node
|
||||
image: node:22-alpine
|
||||
working_dir: /app
|
||||
volumes:
|
||||
- ${MONOREPO:-..}/packages/zappier-sales-pricing:/app
|
||||
command: ["node", "src/server.js"]
|
||||
environment:
|
||||
PORT: "3012"
|
||||
ZAPPIER_ADMIN_URL: http://zappier-edge:3000
|
||||
ports:
|
||||
- "3012:3012"
|
||||
depends_on: [zappier-edge]
|
||||
|
||||
accounting-export:
|
||||
<<: *node
|
||||
image: node:22-alpine
|
||||
working_dir: /app
|
||||
volumes:
|
||||
- ${MONOREPO:-..}/packages/zappier-accounting-export:/app
|
||||
command: ["node", "src/server.js"]
|
||||
environment:
|
||||
PORT: "3013"
|
||||
ZAPPIER_ADMIN_URL: http://zappier-edge:3000
|
||||
ports:
|
||||
- "3013:3013"
|
||||
depends_on: [zappier-edge]
|
||||
|
||||
middleware:
|
||||
<<: *node
|
||||
build:
|
||||
context: ${MONOREPO:-..}/packages/verae-zapier-middleware
|
||||
dockerfile: Dockerfile
|
||||
environment:
|
||||
PORT: "3100"
|
||||
MOCK_VERAE: "true"
|
||||
NATS_ENABLED: "true"
|
||||
NATS_URL: nats://nats1:4222
|
||||
ports:
|
||||
- "3100:3100"
|
||||
depends_on: [nats1, nats2, nats3]
|
||||
|
||||
archive-worm:
|
||||
<<: *node
|
||||
image: node:22-alpine
|
||||
working_dir: /opt/fleet
|
||||
volumes:
|
||||
- ${MONOREPO:-..}/packages/verae-fleet:/opt/fleet
|
||||
- ${MONOREPO:-..}/packages/verae-archive-worm:/opt/worm
|
||||
- worm-data:/data
|
||||
command: ["node", "src/worker.js"]
|
||||
environment:
|
||||
NATS_URL: nats://nats1:4222
|
||||
FLEET_ROLE: archive-worm
|
||||
FLEET_SERVICE: archive-worm
|
||||
FLEET_HEALTH_BIND: 0.0.0.0
|
||||
FLEET_HEALTH_PORT: "13500"
|
||||
FLEET_STATE_DIR: /data
|
||||
deploy:
|
||||
replicas: 3
|
||||
|
||||
tree-node:
|
||||
<<: *node
|
||||
image: node:22-alpine
|
||||
working_dir: /opt/fleet
|
||||
volumes:
|
||||
- ${MONOREPO:-..}/packages/verae-fleet:/opt/fleet
|
||||
- ${MONOREPO:-..}/packages/verae-tree-node:/opt/tree
|
||||
- tree-data:/data
|
||||
command: ["node", "src/worker.js"]
|
||||
environment:
|
||||
NATS_URL: nats://nats1:4222
|
||||
FLEET_ROLE: tree-node
|
||||
FLEET_SERVICE: tree-node
|
||||
FLEET_HEALTH_BIND: 0.0.0.0
|
||||
FLEET_HEALTH_PORT: "13600"
|
||||
FLEET_STATE_DIR: /data
|
||||
deploy:
|
||||
replicas: 3
|
||||
|
||||
networks:
|
||||
verae:
|
||||
driver: bridge
|
||||
internal: false
|
||||
|
||||
volumes:
|
||||
worm-data:
|
||||
tree-data:
|
||||
Loading…
Add table
Add a link
Reference in a new issue