26 lines
880 B
Bash
26 lines
880 B
Bash
#!/usr/bin/env bash
|
|
set -euo pipefail
|
|
cd "$(dirname "$0")"
|
|
|
|
mkdir -p data/db data/files
|
|
|
|
export APP_HOST="${APP_HOST:-0.0.0.0}"
|
|
export APP_PORT="${APP_PORT:-3000}"
|
|
export DATABASE_URL="${DATABASE_URL:-sqlite://$(pwd)/data/db/rustpad.db?mode=rwc}"
|
|
export FILES_DIR="${FILES_DIR:-$(pwd)/data/files}"
|
|
export UPLOAD_MAX_SIZE_MB="${UPLOAD_MAX_SIZE_MB:-20}"
|
|
export STATIC_DIR="${STATIC_DIR:-$(pwd)/static}"
|
|
export RUST_LOG="${RUST_LOG:-rustpad=debug,tower_http=info}"
|
|
# A new value on every run prevents stale HTML/JS cache issues.
|
|
export ASSET_VERSION="${ASSET_VERSION:-dev-$(date +%s)}"
|
|
|
|
if command -v cargo >/dev/null 2>&1; then
|
|
exec cargo run
|
|
elif command -v docker >/dev/null 2>&1; then
|
|
export IMAGE_TAG="${IMAGE_TAG:-dev}"
|
|
exec docker compose up --build --force-recreate --remove-orphans
|
|
else
|
|
echo "Brak cargo i docker. Zainstaluj Rust 1.85+ albo Docker." >&2
|
|
exit 1
|
|
fi
|