#!/bin/bash
# Script to prepare the server for Navi
# Target: Ubuntu 22.04
set -e
echo "[1/5] Updating package lists..."
sudo apt-get update -y
echo "[2/5] Installing essential system tools..."
sudo apt-get install -y build-essential curl wget git vim unzip software-properties-common \
python3-pip python3-venv nmap iperf3 net-tools htop btop tree tree
echo "[3/5] Installing Docker..."
if ! command -v docker &> /dev/string; then
curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.sh
sudo usermod -aG docker $USER
rm get-docker.sh
echo "Docker installed successfully."
else
echo "Docker is already installed."
fi
echo "[4/5] Installing Docker Compose..."
sudo apt-get install -y docker-compose-plugin
echo "[5/5] Finalizing Python environment..."
python3 -m venv ~/navi_env
source ~/navi_env/bin/activate
pip install --upgrade pip
echo "--------------------------------------------------"
echo "Server preparation complete!"
echo "Installed: Docker, Docker Compose, Python venv, Nmap, Iperf3, etc."
echo "--------------------------------------------------"