-
Notifications
You must be signed in to change notification settings - Fork 0
IA Ollama Installation
Lean's edited this page May 23, 2026
·
19 revisions
- sudo pacman -S podman
- systemctl --user enable podman.socket --now
- vim ~/.config/containers/storage.conf
[storage]
driver = "overlay"
graphroot = "/home/user/path/to/podman-storage"
runroot = "/tmp/podman-run-1000"- mkdir -p /home/user/path/to/podman-storage
- mkdir -p /home/user/path/to/ollama
- vim /home/user/path/to/run-ollama.sh
#!/bin/sh
APP_DIR="/home/user/path/to/ollama"
mkdir -p $APP_DIR
if podman container exists ollama; then
podman start ollama
else
podman run -d \
--name ollama \
--restart=always \
--device nvidia.com/gpu=all \
-v /home/user/path/to/ollama:/root/.ollama \
-p 11434:11434 \
docker.io/ollama/ollama
fi
if ! podman exec ollama ollama list | grep -q "qwen3.5:9b"; then
podman exec -it ollama ollama pull qwen3.5:9b
fi
if ! podman exec ollama ollama list | grep -q "nomic-embed-text"; then
podman exec -it ollama ollama pull nomic-embed-text
fi
podman exec -it ollama ollama run qwen3.5:9b- chmod +x /home/user/path/to/run-ollama.sh
- Now exec the run.sh for running the ollama and model
- mkdir -p /home/user/path/to/rag-api
- mkdir -p /home/user/path/to/documents
cat > /home/user/path/to/rag-api/Containerfile <<EOF
FROM python:3.12
WORKDIR /app
RUN pip install fastapi uvicorn \
llama-index \
llama-index-llms-ollama \
llama-index-embeddings-ollama \
chromadb \
pypdf
COPY app.py .
CMD ["uvicorn", "app:app", "--host", "0.0.0.0", "--port", "8000"]
EOFcat > /home/user/path/to/rag-api/app.py <<EOF
from fastapi import FastAPI
app = FastAPI()
@app.get("/")
def root():
return {"status": "ok"}
EOF
- vim /home/user/path/to/run-chromadb.sh
#!/bin/sh
APP_DIR="/home/user/path/to/chromadb"
mkdir -p $APP_DIR
if podman container exists chromadb; then
podman start chromadb
else
podman run -d \
--name chromadb \
--restart=always \
-v /home/user/path/to/chromadb:/chroma/chroma \
-p 8001:8000 \
docker.io/chromadb/chroma
fi
podman logs --tail 999 chromadb && podman exec -it chromadb sh- vim /home/user/path/to/run-rag-api.sh
#!/bin/sh
IMAGE_NAME="localhost/rag-api"
APP_DIR="/home/user/path/to/rag-api"
mkdir -p $APP_DIR
if ! podman image exists "$IMAGE_NAME"; then
echo "Building rag-api..."
podman build -t "$IMAGE_NAME" "$APP_DIR"
fi
if podman container exists rag-api; then
podman start rag-api
else
podman run -d \
--name rag-api \
--restart=always \
-v /home/user/path/to/documents:/app/documents \
-p 8000:8000 \
"$IMAGE_NAME"
fi
podman logs --tail 999 rag-api && podman exec -it rag-api sh-
(Ensure ollama is running)
- podman exec -it ollama ollama pull nomic-embed-text