Files
admin/host-stacks/vds-kzntsv/sched.compose.yml

48 lines
1.7 KiB
YAML
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# sched — шедулер (ядро daemon + admin API) на инфра-VDS.
# Прод: VDS рядом с общей MariaDB (стек 11, сеть shared-dbs, отдельная база sched — свой role, решение 2026-08-27).
# Daemon: published @schedjs/daemon@0.12.1 + @schedjs/storage-mysql@0.4.0 (Dockerfile.mysql).
# Endpoint: https://sched.vds.kzntsv.site (admin API /api/*; health /api/health открыт, остальное Bearer SCHED_ADMIN_KEY).
# Deploy: Portainer-managed (см. portainer-stack-management-vds). Env через Portainer (не env_file).
services:
schedd:
image: registry.kzntsv.site/sched-daemon:0.12.1-mysql
container_name: schedd
restart: unless-stopped
mem_limit: 512m
networks:
- shared-dbs
- proxy
command:
- --tasks
- /app/config/tasks.json
- --storage
- mysql
- --admin-port
- "8080"
- --admin-host
- 0.0.0.0
environment:
MYSQL_URL: mysql://sched:${SCHED_DB_PASS}@mariadb:3306/sched?ssl={"rejectUnauthorized":false}
SCHED_ADMIN_KEY: ${SCHED_ADMIN_KEY}
volumes:
- /opt/stacks/sched/tasks.json:/app/config/tasks.json:ro
healthcheck:
test: ["CMD", "node", "-e", "fetch('http://127.0.0.1:8080/api/health').then(r=>process.exit(r.ok?0:1)).catch(()=>process.exit(1))"]
interval: 15s
timeout: 5s
retries: 3
start_period: 10s
labels:
traefik.enable: "true"
traefik.http.routers.sched.entrypoints: websecure
traefik.http.routers.sched.rule: Host(`sched.vds.kzntsv.site`)
traefik.http.routers.sched.tls.certresolver: letsEncrypt
traefik.http.services.sched.loadbalancer.server.port: "8080"
networks:
shared-dbs:
external: true
proxy:
external: true