[supervisord] nodaemon=true user=root logfile=/var/log/supervisor/supervisord.log pidfile=/var/run/supervisord.pid loglevel=info [unix_http_server] file=/var/run/supervisor.sock chmod=0700 [supervisorctl] serverurl=unix:///var/run/supervisor.sock [rpcinterface:supervisor] supervisor.rpcinterface_factory = supervisor.rpcinterface:make_main_rpcinterface # ============================================================================= # meta-core: HTTP API, Mount API, File Watcher, metadata store (embedded SQLite) # ============================================================================= [program:meta-core] command=/usr/local/bin/meta-core priority=10 ; Room to finish in-flight writes and checkpoint the WAL on shutdown. stopwaitsecs=60 autostart=true autorestart=true stdout_logfile=/dev/stdout stdout_logfile_maxbytes=0 stderr_logfile=/dev/stderr stderr_logfile_maxbytes=0 startsecs=3 environment= META_CORE_PATH="%(ENV_META_CORE_PATH)s", FILES_PATH="%(ENV_FILES_PATH)s", SERVICE_NAME="%(ENV_SERVICE_NAME)s", SERVICE_VERSION="%(ENV_SERVICE_VERSION)s", META_CORE_HTTP_PORT="%(ENV_META_CORE_HTTP_PORT)s", META_CORE_HTTP_HOST="%(ENV_META_CORE_HTTP_HOST)s", WATCH_INTERVAL_MS="%(ENV_WATCH_INTERVAL_MS)s", API_PORT="80", BASE_URL="%(ENV_BASE_URL)s" # ============================================================================= # nginx: Dashboard, API proxy, WebDAV file serving # ============================================================================= [program:nginx] command=/usr/sbin/nginx -g "daemon off;" priority=20 autostart=true autorestart=true stdout_logfile=/var/log/supervisor/nginx.log stderr_logfile=/var/log/supervisor/nginx_error.log startsecs=2 # ============================================================================= # rclone: Remote storage mount daemon (RC API on port 5572) # ============================================================================= [program:rclone] command=/usr/local/bin/rclone rcd --rc-web-gui --rc-web-gui-no-open-browser --rc-addr=:5572 --rc-user=admin --rc-pass=admin priority=30 autostart=true autorestart=true stdout_logfile=/var/log/supervisor/rclone.log stderr_logfile=/var/log/supervisor/rclone_error.log startsecs=3 # ============================================================================= # mount-watcher: Monitors mounts.json and routes all mounts through rclone # ============================================================================= [program:mount-watcher] command=/app/scripts/mount-watcher.sh priority=35 autostart=true autorestart=true stdout_logfile=/var/log/supervisor/mount-watcher.log stderr_logfile=/var/log/supervisor/mount-watcher_error.log startsecs=3 environment= META_CORE_PATH="%(ENV_META_CORE_PATH)s", FILES_PATH="%(ENV_FILES_PATH)s"