entrypoint.sh 660 B

123456789101112131415161718192021222324252627282930313233
  1. #!/bin/bash
  2. set -e
  3. PORT=${OLLAMA_PORT:-11434}
  4. MODEL=${OLLAMA_MODEL:null}
  5. export OLLAMA_HOST="0.0.0.0:$PORT"
  6. ollama serve &
  7. SERVER_PID=$!
  8. echo "Waiting for Ollama server to be healthy..."
  9. until ollama ps >/dev/null 2>&1; do
  10. sleep 1
  11. done
  12. echo "Server is up. Starting model downloads..."
  13. MODELS=${MODELS:-qwen3:8b}
  14. for model in $(echo $MODELS | tr ',' ' '); do
  15. if ! ollama list | grep -q "$model"; then
  16. echo "Pulling model $model..."
  17. ollama pull "$model"
  18. else
  19. echo "Model $model already exists."
  20. fi
  21. done
  22. if [ "$MODEL" != "null" ]; then
  23. echo "Starting model $MODEL..."
  24. ollama run "$MODEL"
  25. fi
  26. wait $SERVER_PID