rezabarkhordary's picture
Create appliance /install.sh
6af1993 verified
Raw
History Blame
1.25 kB
#!/usr/bin/env bash
set -euo pipefail
echo "[SOVEREIGN] Installing appliance (offline)…"
ROOT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
cd "$ROOT_DIR"
# Check docker
if ! command -v docker >/dev/null 2>&1; then
echo "[ERROR] Docker is not installed. Please install Docker Engine first."
exit 1
fi
# Check compose
if ! docker compose version >/dev/null 2>&1; then
echo "[ERROR] Docker Compose not available. Please install docker compose."
exit 1
fi
# Create deploy/.env if missing
mkdir -p ./deploy
if [ ! -f "./deploy/.env" ]; then
if [ -f "./deploy/env.example" ]; then
cp "./deploy/env.example" "./deploy/.env"
echo "[SOVEREIGN] Created deploy/.env from env.example"
else
echo "[ERROR] deploy/env.example missing"
exit 1
fi
fi
# Load offline images if present
mkdir -p ./images
shopt -s nullglob
TARFILES=(./images/*.tar)
if [ ${#TARFILES[@]} -gt 0 ]; then
for t in "${TARFILES[@]}"; do
echo "[SOVEREIGN] Loading image: $t"
docker load -i "$t"
done
else
echo "[WARN] No image tar files found in ./images. (This is OK for now.)"
fi
# Start
echo "[SOVEREIGN] Starting containers..."
docker compose --env-file ./deploy/.env -f ./deploy/docker-compose.yml up -d
echo "[SOVEREIGN] Done."