Spaces:
Running
Running
Download hf-entrypoint.sh from Nebulixlabs/NebulixLabs-Router: direct link, hf CLI and curl.
- Browser
- Download file 1.42 kB
-
https://huggingface.co/spaces/Nebulixlabs/NebulixLabs-Router/resolve/main/hf-entrypoint.sh
- Command line
-
hf download hf://spaces/Nebulixlabs/NebulixLabs-Router/hf-entrypoint.sh
-
curl -L -o hf-entrypoint.sh https://huggingface.co/spaces/Nebulixlabs/NebulixLabs-Router/resolve/main/hf-entrypoint.sh
1.42 kB
| set -eu | |
| # Hugging Face Spaces exposes port 7860 by default. The upstream image sets | |
| # PORT=3001, so override that explicitly here. Use HF_SPACE_PORT only if you | |
| # also change app_port in the Space README front matter. | |
| export PORT="${HF_SPACE_PORT:-7860}" | |
| # Put the SQLite database and (fallback) encryption key in the same mount. | |
| # Attach a persistent Storage Bucket at /data if you want data to survive | |
| # Space restarts/rebuilds. Without a persistent volume, both are ephemeral. | |
| DATA_DIR="${FREELLMAPI_DATA_DIR:-/data}" | |
| mkdir -p "$DATA_DIR" | |
| export FREEAPI_DB_PATH="${FREEAPI_DB_PATH:-$DATA_DIR/freeapi.db}" | |
| # Official FreeLLMAPI requires ENCRYPTION_KEY. Prefer setting it as a Space | |
| # Secret; otherwise create/reuse a key file alongside the database. Keeping | |
| # the file beside the DB means a normal restart does not mismatch the key. | |
| if [ -z "${ENCRYPTION_KEY:-}" ]; then | |
| KEY_FILE="${ENCRYPTION_KEY_FILE:-$DATA_DIR/.encryption-key}" | |
| if [ ! -s "$KEY_FILE" ]; then | |
| umask 077 | |
| TMP_KEY="${KEY_FILE}.tmp.$$" | |
| node -e "process.stdout.write(require('crypto').randomBytes(32).toString('hex'))" > "$TMP_KEY" | |
| mv "$TMP_KEY" "$KEY_FILE" | |
| fi | |
| ENCRYPTION_KEY="$(tr -d '\r\n' < "$KEY_FILE")" | |
| export ENCRYPTION_KEY | |
| fi | |
| # Call the upstream entrypoint so it can set ownership and drop privileges | |
| # before starting the original server command from the image. | |
| exec /usr/local/bin/docker-entrypoint.sh "$@" | |