sha256:432f91cfa5aff7371aae715e8e63f02b12320fc3cee8d7c58f563557ed73d8bb
Last pushed
10 months by autobitdevs
Type
Compose
Manifest digest
sha256:432f91cfa5aff7371aae715e8e63f02b12320fc3cee8d7c58f563557ed73d8bb
# stack.yaml (Compose v2: no top-level version key)
x-onql-env: &onql_env
NATS_URL: ${NATS_URL:-nats://nats:4222}
ONQL_LOG_LEVEL: ${ONQL_LOG_LEVEL:-info}
x-resources: &resources
ulimits:
nofile: { soft: 200000, hard: 200000 }
sysctls:
net.core.somaxconn: 65535
networks:
appnet: { driver: bridge }
services:
nats:
image: nats:2.10-alpine
command: ["-js","-m","8222","-sd","/data"]
networks: [appnet]
restart: unless-stopped
healthcheck:
test: ["CMD", "wget", "-qO-", "http://127.0.0.1:8222/varz"]
interval: 5s
timeout: 3s
retries: 20
volumes:
- nats_data:/data
<<: *resources
onql:
image: autobitdevs/onql:1.3.0
user: "0:0" # runs as root user
environment: *onql_env
depends_on:
nats:
condition: service_healthy
ports:
- "${ONQL_PORT:-5656}:5656"
networks: [appnet]
restart: unless-stopped
# Host bind mount for ONQL data:
# volumes:
# - type: bind
# source: ${ONQL_HOST_DIR:-/srv/onql_a/store}
# target: /app/store
# read_only: false
# For SELinux systems, uncomment:
# bind:
# selinux: z
# ✅ Named volume instead of host bind mount
volumes:
- onql_data:/app/store
labels:
com.centurylinklabs.watchtower.enable: "${WATCHTOWER_ENABLE:-false}"
<<: *resources
# Optional extensions (enable with COMPOSE_PROFILES=ext)
schema:
image: autobitdevs/onql-schema:1.3.0
environment: *onql_env
depends_on:
nats:
condition: service_healthy
networks: [appnet]
restart: unless-stopped
profiles: ["ext"]
protocol:
image: autobitdevs/onql-protocol:1.3.0
environment: *onql_env
depends_on:
nats:
condition: service_healthy
networks: [appnet]
restart: unless-stopped
profiles: ["ext"]
volumes:
# NATS state (named volume)
nats_data: {}
onql_data: {} # ✅ Added this line for named volume
services:
nats:
image: docker.io/library/nats:2.10-alpine@sha256:ebfd4665761af84d1d38b6745568389c6be30c1aa2309bd53ddbaecfc45212e8
onql:
image: docker.io/autobitdevs/onql:1.3.0@sha256:f77aa8751253eca68c7ef61fa364250e1391b40ee23f260dddf5297fe7f1b622
protocol:
image: docker.io/autobitdevs/onql-protocol:1.3.0@sha256:0ec9a714151d3c9a1483fc32a0794ffee2fec5489003e72f5826de15a95f36b8
schema:
image: docker.io/autobitdevs/onql-schema:1.3.0@sha256:d529b574ecfbaa0eef74cd7c25d1ac22ff897ba9748498a4c24b90b7d1fe3396
docker compose -f oci://autobitdevs/onql-stack:latest upUse the above command to pull and run the Compose file. Learn more.
NATS is an open-source, high-performance, cloud native messaging system.
Pulls
100M+
Stars
522
Last Updated
2 days