just copy and paste into text editor and make executable . #!/bin/bash
Update and upgrade system
echo “Updating system…”
sudo apt update && sudo apt upgrade -y
Install essential packages
echo “Installing essential packages…”
sudo apt install -y curl wget unzip git vim build-essential
Install Python 3 and pip
echo “Installing Python 3 and pip…”
sudo apt install -y python3 python3-pip python3-dev
Confirm Python and pip installation
echo “Confirming Python and pip versions…”
python3 --version
pip3 --version
Install Ollama
echo “Installing Ollama…”
curl -fsSL https://ollama.com/install.sh | sh
Install Docker dependencies
echo “Installing Docker dependencies…”
sudo apt install -y apt-transport-https ca-certificates curl software-properties-common
Add Docker’s official GPG key
echo “Adding Docker’s official GPG key…”
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
Set up the stable Docker repository
echo “Setting up Docker repository…”
echo “deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] Index of linux/ubuntu/ $(lsb_release -cs) stable” | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
Install Docker Engine and Docker Compose
echo “Installing Docker Engine and Docker Compose…”
sudo apt update
sudo apt install -y docker-ce docker-ce-cli containerd.io docker-compose
Install Docker Compose binary (if needed)
echo “Installing Docker Compose binary…”
sudo curl -L “https://github.com/docker/compose/releases/download/v2.32.4/docker-compose-$(uname -s)-$(uname -m)” -o /usr/local/bin/docker-compose
Make Docker Compose executable
echo “Making Docker Compose executable…”
sudo chmod +x /usr/local/bin/docker-compose
Verify Docker Compose version
echo “Verifying Docker Compose version…”
docker-compose --version
Install Nvidia Docker dependencies
echo “Installing Nvidia Docker dependencies…”
sudo apt-get install -y nvidia-docker2
Clone the Self-Hosted AI Starter Kit repository
echo “Cloning the Self-Hosted AI Starter Kit repository…”
git clone GitHub - n8n-io/self-hosted-ai-starter-kit: The Self-hosted AI Starter Kit is an open-source template that quickly sets up a local AI environment. Curated by n8n, it provides essential tools for creating secure, self-hosted AI workflows.
cd self-hosted-ai-starter-kit
Install Nvidia Container Toolkit
echo “Installing Nvidia Container Toolkit…”
curl -fsSL https://nvidia.github.io/libnvidia-container/gpgkey | sudo gpg --dearmor -o /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg
curl -s -L https://nvidia.github.io/libnvidia-container/stable/deb/nvidia-container-toolkit.list
| sed ‘s#deb https://#deb [signed-by=/usr/share/keyrings/nvidia-container-toolkit-keyring.gpg] https://#g’
| sudo tee /etc/apt/sources.list.d/nvidia-container-toolkit.list
sudo apt-get update
Install Nvidia Container Toolkit
echo “Installing Nvidia Container Toolkit…”
sudo apt-get install -y nvidia-container-toolkit
Configure Nvidia runtime for Docker
echo “Configuring Nvidia runtime for Docker…”
sudo nvidia-ctk runtime configure --runtime=docker
Restart Docker service
echo “Restarting Docker service…”
sudo systemctl restart docker
Edit Docker Compose file for Nvidia GPU users
echo “Editing Docker Compose file for Nvidia GPU…”
sed -i ‘s/11435:11434/11435:11434/’ docker-compose.yml
Start the Docker Compose services for GPU
echo “Starting Docker Compose services for GPU…”
sudo docker compose --profile gpu-nvidia up
Open browser and go to localhost:5678 (For your reference, not automatic)
echo “Access your service on localhost:5678”
Stop Docker Compose services when done
echo “To stop Docker Compose services, run:”
echo “sudo docker compose down -v”
Optionally, add more Ollama models by editing the Docker Compose file
echo “To add more Ollama models, edit the Docker Compose file and add pull commands.”
echo “For example, use: ollama pull llama3.2; ollama pull mistral; ollama pull model-name”
Restart Docker service again for good measure
echo “Restarting Docker service again…”
sudo systemctl restart docker
Run Docker Compose again to load new models
echo “Running Docker Compose again to load new models…”
sudo docker compose up
And the uninstall script here: #!/bin/bash
Uninstall Docker Compose
echo “Removing Docker Compose…”
sudo rm -f /usr/local/bin/docker-compose
Uninstall Docker Engine and Docker Compose dependencies
echo “Removing Docker Engine and dependencies…”
sudo apt-get purge -y docker-ce docker-ce-cli containerd.io
Remove Docker-related files
echo “Cleaning up Docker files…”
sudo rm -rf /var/lib/docker
sudo rm -rf /var/lib/containerd
Remove Docker repository and GPG key
echo “Removing Docker repository and GPG key…”
sudo rm /etc/apt/sources.list.d/docker.list
sudo rm /usr/share/keyrings/docker-archive-keyring.gpg
Remove Nvidia Docker and dependencies
echo “Removing Nvidia Docker and dependencies…”
sudo apt-get purge -y nvidia-docker2 nvidia-container-toolkit
sudo rm -rf /etc/apt/sources.list.d/nvidia-container-toolkit.list
sudo rm /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg
Remove Nvidia Docker runtime configuration
echo “Removing Nvidia Docker runtime configuration…”
sudo nvidia-ctk runtime reset
Remove Ollama installation
echo “Removing Ollama…”
rm -rf ~/.ollama
Remove Python 3 and related packages
echo “Removing Python 3 and related packages…”
sudo apt-get purge -y python3 python3-pip python3-dev
Remove essential packages
echo “Removing essential packages…”
sudo apt-get purge -y curl wget unzip git vim build-essential
Clean up apt cache
echo “Cleaning up apt cache…”
sudo apt-get autoremove -y
sudo apt-get clean
Remove self-hosted AI Starter Kit repository
echo “Removing Self-hosted AI Starter Kit repository…”
cd …
rm -rf self-hosted-ai-starter-kit
Final clean up
echo “Performing final clean up…”
sudo apt-get autoremove -y
sudo apt-get clean
Display completion message
echo “Uninstallation completed!”