| 
                        12345678910111213141516171819202122232425262728293031323334353637383940 | 
                        - #!/bin/bash
 - 
 - set -e
 - 
 - if [[ "${MIGRATION_ENABLED}" == "true" ]]; then
 -   echo "Running migrations"
 -   flask upgrade-db
 - fi
 - 
 - if [[ "${MODE}" == "worker" ]]; then
 - 
 -   # Get the number of available CPU cores
 -   if [ "${CELERY_AUTO_SCALE,,}" = "true" ]; then
 -     # Set MAX_WORKERS to the number of available cores if not specified
 -     AVAILABLE_CORES=$(nproc)
 -     MAX_WORKERS=${CELERY_MAX_WORKERS:-$AVAILABLE_CORES}
 -     MIN_WORKERS=${CELERY_MIN_WORKERS:-1}
 -     CONCURRENCY_OPTION="--autoscale=${MAX_WORKERS},${MIN_WORKERS}"
 -   else
 -     CONCURRENCY_OPTION="-c ${CELERY_WORKER_AMOUNT:-1}"
 -   fi
 - 
 -   exec celery -A app.celery worker -P ${CELERY_WORKER_CLASS:-gevent} $CONCURRENCY_OPTION --loglevel ${LOG_LEVEL} \
 -     -Q ${CELERY_QUEUES:-dataset,mail,ops_trace,app_deletion}
 - 
 - elif [[ "${MODE}" == "beat" ]]; then
 -   exec celery -A app.celery beat --loglevel ${LOG_LEVEL}
 - else
 -   if [[ "${DEBUG}" == "true" ]]; then
 -     exec flask run --host=${DIFY_BIND_ADDRESS:-0.0.0.0} --port=${DIFY_PORT:-5001} --debug
 -   else
 -     exec gunicorn \
 -       --bind "${DIFY_BIND_ADDRESS:-0.0.0.0}:${DIFY_PORT:-5001}" \
 -       --workers ${SERVER_WORKER_AMOUNT:-1} \
 -       --worker-class ${SERVER_WORKER_CLASS:-gevent} \
 -       --worker-connections ${SERVER_WORKER_CONNECTIONS:-10} \
 -       --timeout ${GUNICORN_TIMEOUT:-200} \
 -       app:app
 -   fi
 - fi
 
 
  |