mirror of
https://github.com/dograh-hq/dograh.git
synced 2026-06-10 08:05:22 +02:00
feat: an option to setup remote server with docker compose build (#280)
* feat: remote setup with docker build option * chore: update documentation * chore: make script run in non tty * chore: add warning about slow build * chore: add more documentation * feat: add FASTAPI_WORKERS parameter * feat: add scaling docs * feat: add update script * fix: fix semver options in update_remote.sh
This commit is contained in:
parent
b670004725
commit
59619e9eaa
10 changed files with 1086 additions and 145 deletions
|
|
@ -61,7 +61,16 @@ start() {
|
|||
|
||||
start ari_manager python -m api.services.telephony.ari_manager
|
||||
start campaign_orchestrator python -m api.services.campaign.campaign_orchestrator
|
||||
start uvicorn uvicorn api.app:app --host 0.0.0.0 --port "$UVICORN_BASE_PORT" --workers "$FASTAPI_WORKERS"
|
||||
|
||||
# Spawn FASTAPI_WORKERS independent uvicorn processes on consecutive ports
|
||||
# starting at UVICORN_BASE_PORT. nginx upstream (configured in setup_remote.sh)
|
||||
# balances across them with least_conn — better than uvicorn --workers for
|
||||
# long-lived WebSocket connections, which would otherwise stick to whichever
|
||||
# worker accepted them first.
|
||||
for ((i=0; i<FASTAPI_WORKERS; i++)); do
|
||||
port=$((UVICORN_BASE_PORT + i))
|
||||
start "uvicorn$i" uvicorn api.app:app --host 0.0.0.0 --port "$port" --workers 1
|
||||
done
|
||||
|
||||
for ((i=1; i<=ARQ_WORKERS; i++)); do
|
||||
start "arq$i" python -m arq api.tasks.arq.WorkerSettings --custom-log-dict api.tasks.arq.LOG_CONFIG
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue