#!/usr/bin/env bash set -euo pipefail SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" # Ensure the writable data directory exists on the host mkdir -p "${SCRIPT_DIR}/data" ENV_ARGS=() if [ -f "${SCRIPT_DIR}/.env" ]; then ENV_ARGS+=(--env-file "${SCRIPT_DIR}/.env") fi docker run -d \ --name dashback \ --restart unless-stopped \ --read-only \ --user "$(id -u):$(id -g)" \ --tmpfs /tmp:rw,exec,nosuid,size=512m \ --tmpfs /run:rw,noexec,nosuid,size=16m \ -p 127.0.0.1:4608:4208 \ "${ENV_ARGS[@]}" \ --add-host=host.docker.internal:host-gateway \ -e HOST=0.0.0.0 \ -e PORT=4208 \ -e HTTPS_PORT=0 \ -e MSSQL_SERVER=host.docker.internal \ -e HEALTH_MONITOR_ENABLED=false \ -e SQLITE_PATH=/app/data/dash.db \ -e STORAGE_DIR=/app/data/storage \ -e BACKUP_DIR=/app/data/backups \ -v "${SCRIPT_DIR}/dist/dashback:/app/dist/dashback:ro" \ -v "${SCRIPT_DIR}/data:/app/data:rw" \ dashback:latest