Multistage Dockerfile (FrankenPHP + Octane + Horizon + Reverb) with
docker-compose wiring 6 services: app, mariadb, qdrant, ollama, redis,
traefik. All data mounts to .core/vm/mnt/{config,data,log}. Traefik
routes *.lthn.sh with self-signed TLS. Setup script handles first-run
bootstrap including cert generation and embedding model pull.
Co-Authored-By: Virgil <virgil@lethean.io>
68 lines
1.4 KiB
Text
68 lines
1.4 KiB
Text
[supervisord]
|
|
nodaemon=true
|
|
user=root
|
|
logfile=/dev/null
|
|
logfile_maxbytes=0
|
|
pidfile=/run/supervisord.pid
|
|
|
|
[program:laravel-setup]
|
|
command=/usr/local/bin/entrypoint.sh
|
|
autostart=true
|
|
autorestart=false
|
|
startsecs=0
|
|
priority=5
|
|
stdout_logfile=/dev/stdout
|
|
stdout_logfile_maxbytes=0
|
|
stderr_logfile=/dev/stderr
|
|
stderr_logfile_maxbytes=0
|
|
|
|
[program:octane]
|
|
command=php artisan octane:start --server=frankenphp --host=0.0.0.0 --port=8088 --admin-port=2019
|
|
directory=/app
|
|
autostart=true
|
|
autorestart=true
|
|
startsecs=5
|
|
priority=10
|
|
stdout_logfile=/dev/stdout
|
|
stdout_logfile_maxbytes=0
|
|
stderr_logfile=/dev/stderr
|
|
stderr_logfile_maxbytes=0
|
|
|
|
[program:horizon]
|
|
command=php artisan horizon
|
|
directory=/app
|
|
autostart=true
|
|
autorestart=true
|
|
startsecs=5
|
|
priority=15
|
|
user=nobody
|
|
stdout_logfile=/dev/stdout
|
|
stdout_logfile_maxbytes=0
|
|
stderr_logfile=/dev/stderr
|
|
stderr_logfile_maxbytes=0
|
|
|
|
[program:scheduler]
|
|
command=sh -c "while true; do php artisan schedule:run --verbose --no-interaction; sleep 60; done"
|
|
directory=/app
|
|
autostart=true
|
|
autorestart=true
|
|
startsecs=0
|
|
priority=20
|
|
user=nobody
|
|
stdout_logfile=/dev/stdout
|
|
stdout_logfile_maxbytes=0
|
|
stderr_logfile=/dev/stderr
|
|
stderr_logfile_maxbytes=0
|
|
|
|
[program:reverb]
|
|
command=php artisan reverb:start --host=0.0.0.0 --port=8080
|
|
directory=/app
|
|
autostart=true
|
|
autorestart=true
|
|
startsecs=5
|
|
priority=25
|
|
user=nobody
|
|
stdout_logfile=/dev/stdout
|
|
stdout_logfile_maxbytes=0
|
|
stderr_logfile=/dev/stderr
|
|
stderr_logfile_maxbytes=0
|