| #!/bin/sh |
|
|
| |
| set -e |
|
|
| echo "Starting in APP_MODE: $APP_MODE" |
|
|
| |
| |
| |
| |
| for dir in \ |
| "${GRADIO_OUTPUT_FOLDER:-/home/user/app/output}" \ |
| "${GRADIO_INPUT_FOLDER:-/home/user/app/input}" \ |
| "${GRADIO_TEMP_DIR:-/tmp/gradio_tmp}" \ |
| "${ACCESS_LOGS_FOLDER:-/home/user/app/logs}" \ |
| "${USAGE_LOGS_FOLDER:-/home/user/app/usage}" \ |
| "${FEEDBACK_LOGS_FOLDER:-/home/user/app/feedback}" \ |
| "${CONFIG_FOLDER:-/home/user/app/config}"; do |
| mkdir -p "$dir" 2>/dev/null || true |
| if [ ! -w "$dir" ]; then |
| echo "WARNING: Directory $dir is not writable by current user (uid=$(id -u)). File I/O will fail." >&2 |
| fi |
| done |
|
|
| |
|
|
| if [ "$APP_MODE" = "lambda" ]; then |
| echo "Starting in Lambda mode..." |
| |
| exec python -m awslambdaric "$@" |
| else |
| echo "Starting in Gradio/FastAPI mode..." |
|
|
| if [ "$RUN_FASTAPI" = "True" ]; then |
| echo "Starting in FastAPI mode..." |
| |
| GRADIO_SERVER_NAME=${GRADIO_SERVER_NAME:-0.0.0.0} |
| GRADIO_SERVER_PORT=${GRADIO_SERVER_PORT:-7860} |
|
|
| |
| echo "Starting with Uvicorn on $GRADIO_SERVER_NAME:$GRADIO_SERVER_PORT" |
| exec uvicorn app:app \ |
| --host $GRADIO_SERVER_NAME \ |
| --port $GRADIO_SERVER_PORT \ |
| --proxy-headers \ |
| --forwarded-allow-ips "*" |
| else |
| echo "Starting in Gradio mode..." |
| exec python app.py |
| fi |
| fi |