diff options
author | ben | 2023-03-04 22:22:22 +0100 |
---|---|---|
committer | ben | 2025-03-04 21:47:15 +0100 |
commit | 207592ff57938536eafa99f2632d670d2bb9457e (patch) | |
tree | 25e89078fad54f86d2691b21e8390b36e44e1aa5 /src/ollama_provision | |
parent | f3eae794ace20d10edc4e970ce6258a47fb3b4d9 (diff) | |
download | ai_env-207592ff57938536eafa99f2632d670d2bb9457e.tar.gz ai_env-207592ff57938536eafa99f2632d670d2bb9457e.tar.bz2 ai_env-207592ff57938536eafa99f2632d670d2bb9457e.tar.xz |
Isolating containers from internet access to enhance security.
Diffstat (limited to 'src/ollama_provision')
-rw-r--r-- | src/ollama_provision/Dockerfile | 12 | ||||
-rw-r--r-- | src/ollama_provision/entrypoint.sh | 5 | ||||
-rwxr-xr-x | src/ollama_provision/init_models.sh | 17 |
3 files changed, 34 insertions, 0 deletions
diff --git a/src/ollama_provision/Dockerfile b/src/ollama_provision/Dockerfile new file mode 100644 index 0000000..4aa439b --- /dev/null +++ b/src/ollama_provision/Dockerfile @@ -0,0 +1,12 @@ +FROM ollama/ollama:latest + +ENV DEBIAN_FRONTEND=noninteractive +RUN apt-get update +RUN apt-get --yes -o Dpkg::Options::="--force-confdef" -o Dpkg::Options::="--force-confnew" install bash curl jq + +ADD ./src/ollama_provision/init_models.sh /init_models.sh +ADD ./src/ollama_provision/entrypoint.sh /entrypoint.sh +RUN chmod 755 /entrypoint.sh + +ENTRYPOINT ["/entrypoint.sh"] +#ENTRYPOINT ["tail", "-f", "/dev/null"] # to debug diff --git a/src/ollama_provision/entrypoint.sh b/src/ollama_provision/entrypoint.sh new file mode 100644 index 0000000..1952755 --- /dev/null +++ b/src/ollama_provision/entrypoint.sh @@ -0,0 +1,5 @@ +#!/usr/bin/env bash + +ollama start & +echo "pull models into ollama volumes" +bash /init_models.sh diff --git a/src/ollama_provision/init_models.sh b/src/ollama_provision/init_models.sh new file mode 100755 index 0000000..1eae979 --- /dev/null +++ b/src/ollama_provision/init_models.sh @@ -0,0 +1,17 @@ +#!/usr/bin/env bash + + +IFS=',' read -r -a models_arr <<< "${MODELS}" + +## now loop through the above array +for m in "${models_arr[@]}" +do + ollama list | tail -n +2 | cut -d' ' -f1 | grep ${m} > /dev/null + if [[ $? -ne 0 ]] + then + echo "download {m}" + ollama pull "${m}" + else + echo "${m} already installed" + fi +done |