diff --git a/00-new.sh b/00-new.sh deleted file mode 100644 index 113169d..0000000 --- a/00-new.sh +++ /dev/null @@ -1,132 +0,0 @@ -#!/usr/bin/env bash -set -euo pipefail - -### CONFIG ### -mkdir -p /home/anon/open-webui -OPENWEBUI_DIR="/home/anon/open-webui" -OPENWEBUI_IMAGE="ghcr.io/open-webui/open-webui:main" -### /CONFIG ### - -echo "=== Ollama + Open WebUI installer for Ubuntu Server 24.04 (RTX 3060) ===" - -if [[ $EUID -ne 0 ]]; then - echo "Please run this script as root (e.g. sudo bash $0)" - exit 1 -fi - -echo "Step 1/6: Updating apt and installing base dependencies..." -apt-get update -y -apt-get upgrade -y -apt-get install -y \ - curl \ - ca-certificates \ - gnupg \ - lsb-release \ - apt-transport-https \ - software-properties-common - -echo "Step 2/6: Installing NVIDIA driver (for RTX 3060)..." -# Install the recommended proprietary driver -ubuntu-drivers install --gpgpu || true - -if ! command -v nvidia-smi >/dev/null 2>&1; then - echo "WARNING: nvidia-smi not found. A reboot may be required to load the NVIDIA driver." - echo "After this script finishes, reboot your server, then run: nvidia-smi" -else - echo "NVIDIA driver appears to be installed:" - nvidia-smi || true -fi - -echo "Step 3/6: Installing Docker Engine + Docker Compose..." - -# Remove old Docker if present -apt-get remove -y docker docker-engine docker.io containerd runc || true - -# Add Docker’s official GPG key -install -m 0755 -d /etc/apt/keyrings -if [ ! -f /etc/apt/keyrings/docker.gpg ]; then - curl -fsSL https://download.docker.com/linux/ubuntu/gpg | \ - gpg --dearmor -o /etc/apt/keyrings/docker.gpg - chmod a+r /etc/apt/keyrings/docker.gpg -fi - -# Add Docker apt repository -UBUNTU_CODENAME="$(. /etc/os-release && echo "$VERSION_CODENAME")" -if [ ! -f /etc/apt/sources.list.d/docker.list ]; then - echo \ - "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \ - ${UBUNTU_CODENAME} stable" > /etc/apt/sources.list.d/docker.list -fi - -apt-get update -y -apt-get install -y \ - docker-ce \ - docker-ce-cli \ - containerd.io \ - docker-buildx-plugin \ - docker-compose-plugin - -systemctl enable --now docker - -echo "Docker version:" -docker --version || true -echo "Docker Compose plugin version:" -docker compose version || true - -echo "Step 4/6: Installing Ollama (GPU-enabled)..." -curl -fsSL https://ollama.com/install.sh | sh - -# Make sure the service is enabled & running -systemctl enable --now ollama - -echo "Waiting for Ollama API to be reachable on http://127.0.0.1:11434 ..." -for i in {1..30}; do - if curl -sSf http://127.0.0.1:11434/api/version >/dev/null 2>&1; then - echo "Ollama is up!" - break - fi - sleep 2 -done - -if ! curl -sSf http://127.0.0.1:11434/api/version >/dev/null 2>&1; then - echo "WARNING: Ollama API not responding yet. Check 'systemctl status ollama' after the script finishes." -fi - -echo "Step 5/6: Creating Open WebUI Docker Compose setup..." - -mkdir -p "${OPENWEBUI_DIR}" -cd "${OPENWEBUI_DIR}" - -cat > docker-compose.yml <<'EOF' -services: - open-webui: - image: ghcr.io/open-webui/open-webui:main - container_name: open-webui - restart: unless-stopped - network_mode: "host" - environment: - # Point Open WebUI to the locally-running Ollama instance - - OLLAMA_BASE_URL=http://127.0.0.1:11434 - # Uncomment to disable auth on local networks (optional) - # - OPENWEBUI_AUTH=False - volumes: - - ./data:/app/backend/data -EOF - -echo "docker-compose.yml created at ${OPENWEBUI_DIR}/docker-compose.yml" - -echo "Step 6/6: Starting Open WebUI with Docker Compose..." -docker compose up -d - -echo -echo "==================== DONE ====================" -echo "Ollama service: systemctl status ollama" -echo "Open WebUI stack: cd ${OPENWEBUI_DIR} && docker compose ps" -echo -echo "If this is a fresh NVIDIA driver install, reboot the server, then verify GPU availability with:" -echo " nvidia-smi" -echo -echo "Once everything is running, access Open WebUI at:" -echo " http://:8080" -echo "(Default Open WebUI port inside the container is 8080; we're using host networking.)" -echo "==============================================" diff --git a/00-new1.sh b/00-new1.sh new file mode 100644 index 0000000..7b2ff69 --- /dev/null +++ b/00-new1.sh @@ -0,0 +1,30 @@ +#!/usr/bin/env bash +set -euo pipefail + +echo "=== Step 1: NVIDIA driver install for RTX 3060 on Ubuntu 24.04 ===" + +if [[ $EUID -ne 0 ]]; then + echo "Please run this script as root, e.g.: sudo bash $0" + exit 1 +fi + +echo "Updating apt and installing base dependencies..." +apt-get update -y +apt-get upgrade -y +apt-get install -y \ + curl \ + ca-certificates \ + gnupg \ + lsb-release \ + apt-transport-https \ + software-properties-common + +echo +echo "Installing NVIDIA driver + utils (570)..." +# Desktop 570 stack: works fine on servers too and pulls in nvidia-smi +apt-get install -y nvidia-driver-570 nvidia-utils-570 + +echo +echo "Driver install finished." +echo "Now REBOOT your server, then run: nvidia-smi" +echo "If nvidia-smi works, run the second script: 01-ollama-openwebui.sh"