Delete 00-new2.sh
This commit is contained in:
parent
46eb3b97b5
commit
124d848ef2
136
00-new2.sh
136
00-new2.sh
|
|
@ -1,136 +0,0 @@
|
||||||
#!/usr/bin/env bash
|
|
||||||
set -euo pipefail
|
|
||||||
|
|
||||||
### CONFIG ###
|
|
||||||
OPENWEBUI_IMAGE="ghcr.io/open-webui/open-webui:main"
|
|
||||||
### /CONFIG ###
|
|
||||||
|
|
||||||
echo "=== Step 2: Install Docker, Ollama, and Open WebUI ==="
|
|
||||||
|
|
||||||
if [[ $EUID -ne 0 ]]; then
|
|
||||||
echo "Please run this script as root, e.g.: sudo bash $0"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Figure out the "real" user so we put Open WebUI in their home
|
|
||||||
REALUSER="${SUDO_USER:-$USER}"
|
|
||||||
USER_HOME="$(eval echo ~${REALUSER})"
|
|
||||||
OPENWEBUI_DIR="${USER_HOME}/open-webui"
|
|
||||||
|
|
||||||
echo "Real user: ${REALUSER}"
|
|
||||||
echo "User home: ${USER_HOME}"
|
|
||||||
echo "Open WebUI directory: ${OPENWEBUI_DIR}"
|
|
||||||
echo
|
|
||||||
|
|
||||||
# --- Sanity check: GPU must be visible now ---
|
|
||||||
if ! command -v nvidia-smi >/dev/null 2>&1; then
|
|
||||||
echo "WARNING: nvidia-smi not found."
|
|
||||||
echo "Make sure you ran 00-gpu-driver.sh and rebooted successfully."
|
|
||||||
echo "You can still continue, but GPU usage may not work."
|
|
||||||
else
|
|
||||||
echo "nvidia-smi output:"
|
|
||||||
nvidia-smi || true
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo
|
|
||||||
echo "Step 1/3: Installing Docker Engine + Docker Compose..."
|
|
||||||
|
|
||||||
# Remove old Docker bits if present (ignore errors)
|
|
||||||
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
|
|
||||||
echo "Step 2/3: Installing Ollama (GPU-enabled)..."
|
|
||||||
|
|
||||||
# Let Ollama's installer run even if its CUDA driver step fails
|
|
||||||
set +e
|
|
||||||
curl -fsSL https://ollama.com/install.sh | sh
|
|
||||||
OLLAMA_RC=$?
|
|
||||||
set -e
|
|
||||||
|
|
||||||
if [ $OLLAMA_RC -ne 0 ]; then
|
|
||||||
echo "WARNING: Ollama installer returned non-zero (likely CUDA driver conflicts)."
|
|
||||||
echo "As long as you have a working NVIDIA driver (nvidia-smi works), you can ignore this."
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Make sure the service is enabled & running
|
|
||||||
systemctl enable --now ollama || true
|
|
||||||
|
|
||||||
echo "Waiting for Ollama API 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'."
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo
|
|
||||||
echo "Step 3/3: Setting up Open WebUI with Docker Compose..."
|
|
||||||
|
|
||||||
mkdir -p "${OPENWEBUI_DIR}"
|
|
||||||
cd "${OPENWEBUI_DIR}"
|
|
||||||
|
|
||||||
cat > docker-compose.yml <<'EOF'
|
|
||||||
version: "3.8"
|
|
||||||
|
|
||||||
services:
|
|
||||||
open-webui:
|
|
||||||
image: ghcr.io/open-webui/open-webui:main
|
|
||||||
container_name: open-webui
|
|
||||||
restart: unless-stopped
|
|
||||||
network_mode: "host"
|
|
||||||
environment:
|
|
||||||
- OLLAMA_BASE_URL=http://127.0.0.1:11434
|
|
||||||
# Uncomment to disable auth (optional, not recommended on exposed hosts)
|
|
||||||
# - OPENWEBUI_AUTH=False
|
|
||||||
volumes:
|
|
||||||
- ./data:/app/backend/data
|
|
||||||
EOF
|
|
||||||
|
|
||||||
echo "docker-compose.yml created at ${OPENWEBUI_DIR}/docker-compose.yml"
|
|
||||||
|
|
||||||
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 "Access Open WebUI at:"
|
|
||||||
echo " http://<your-server-ip>:8080"
|
|
||||||
echo "=============================================="
|
|
||||||
Loading…
Reference in New Issue