当前位置: 首页 > article >正文

minikube 的 Kubernetes 入门教程--Ollama

让我们在本地 Kubernetes 中部署 Ollama(llama3.2)

Ollama 安装方式有多样,是可选的,因为有minikube环境,我在 Kubernetes 中Deployment它。调用Ollama镜像,也可以用 Ollama CLI 去运行(run)llama或deepseek,在Kubernetes中操作还是方便的。

创建namespace(ollama)

$ kubectl create namespace ollama
namespace/ollama created

执行编写ollama的deployment和service的yaml文件,得到pod和svc,网络的原因拉取image花了接近35分钟,Pod才切换到running状态

$ kubectl get pods,svc -n ollama
NAME                          READY   STATUS              RESTARTS   AGE
pod/ollama-55bdc97d8f-z4lw5   0/1     ContainerCreating   0          24m

NAME             TYPE       CLUSTER-IP      EXTERNAL-IP   PORT(S)        AGE
service/ollama   NodePort   10.104.206.83   <none>        80:31772/TCP   23m
$ kubectl describe pod/ollama-55bdc97d8f-z4lw5 -n ollama
....
Events:
  Type    Reason     Age   From               Message
  ----    ------     ----  ----               -------
  Normal  Scheduled  26m   default-scheduler  Successfully assigned ollama/ollama-55bdc97d8f-z4lw5 to minikube
  Normal  Pulling    26m   kubelet            Pulling image "ollama/ollama:latest"

$ kubectl get pods,svc -n ollama
NAME                          READY   STATUS    RESTARTS   AGE
pod/ollama-55bdc97d8f-z4lw5   1/1     Running   0          35m

NAME             TYPE       CLUSTER-IP      EXTERNAL-IP   PORT(S)        AGE
service/ollama   NodePort   10.104.206.83   <none>        80:31772/TCP   34m

$ minikube service ollama -n ollama --url
http://192.168.49.2:31772

接下来,在ollama中run llama3.2

$ kubectl exec -it pod/ollama-55bdc97d8f-z4lw5 -n ollama -- sh
# ollama -v
ollama version is 0.5.7-0-ga420a45-dirty

++++llama+++++
# ollama run llama3.2
pulling manifest 
pulling dde5aa3fc5ff... 100% ▕█████████████████████████████████████████████████████████████████████████████████████████████████████████▏ 2.0 GB                         
pulling 966de95ca8a6... 100% ▕█████████████████████████████████████████████████████████████████████████████████████████████████████████▏ 1.4 KB                         
pulling fcc5a6bec9da... 100% ▕█████████████████████████████████████████████████████████████████████████████████████████████████████████▏ 7.7 KB                         
pulling a70ff7e570d9... 100% ▕█████████████████████████████████████████████████████████████████████████████████████████████████████████▏ 6.0 KB                         
pulling 56bb8bd477a5... 100% ▕█████████████████████████████████████████████████████████████████████████████████████████████████████████▏   96 B                         
pulling 34bb5ab01051... 100% ▕█████████████████████████████████████████████████████████████████████████████████████████████████████████▏  561 B                         
verifying sha256 digest 
writing manifest 
success 
>>> hi
How can I assist you today?
>>> 
Generate request (Streaming)

在run最后,创建了1个对话的交互,也可以通过curl去验证api是否工作正常   

$ curl http://192.168.49.2:31772/api/generate -d '{
  "model": "llama3.2",
  "prompt": "Why is the sky blue?"
}'
{"model":"llama3.2","created_at":"2025-02-04T13:44:53.135357039Z","response":"The","done":false}
{"model":"llama3.2","created_at":"2025-02-04T13:44:53.343546503Z","response":" sky","done":false}
{"model":"llama3.2","created_at":"2025-02-04T13:44:53.527870267Z","response":" appears","done":false}
{"model":"llama3.2","created_at":"2025-02-04T13:44:53.711866139Z","response":" blue","done":false}
{"model":"llama3.2","created_at":"2025-02-04T13:44:53.883596915Z","response":" because","done":false}
{"model":"llama3.2","created_at":"2025-02-04T13:44:54.063993698Z","response":" of","done":false}
{"model":"llama3.2","created_at":"2025-02-04T13:44:54.236673872Z","response":" a","done":false}

返回Dify界面>>配置>>模型供应商

返回首页>>创建空白应用>>聊天助手(chatbot)

 点击新创建的应用>>聊天助手(chatbot)进入,点击发布>>在“探索”中打开

基于设备(laptop)硬件性能和模型的性能,对话过程中响应有些慢。


http://www.kler.cn/a/532739.html

相关文章:

  • 解读“大语言模型(LLM)安全性测评基准”
  • DeepSeekMoE:迈向混合专家语言模型的终极专业化
  • Linux进程状态及其转换
  • 六十分之三十七——一转眼、时光飞逝
  • Lesson 127 A famous actress
  • OpenCV:图像轮廓
  • 360手机刷机 360手机解Bootloader 360手机ROOT
  • Linux 软件安装
  • SSM聚合项目+Vue3+Element-plus项目生产部署(Ubuntu24.04LTS)
  • github下载失败网页打开失败 若你已经知道github地址如何cmd下载
  • 车载软件架构 --- 软件定义汽车面向服务架构的应用迁移
  • 基序和纯度分数的计算
  • 【数据结构】栈与队列
  • redis简介及应用
  • RK3566-移植5.10内核Ubuntu22.04
  • 数据结构:优先级队列— PriorityQueue
  • 04树 + 堆 + 优先队列 + 图(D1_树(D17_综合刷题练习))
  • Shell 中的 Globbing:原理、使用方法与实现解析(中英双语)
  • DeepSeek相关技术整理
  • 基于RTOS的STM32游戏机
  • 电商项目高级篇09-检索服务
  • Linux find 命令 | grep 命令 | 查找 / 列出文件或目录路径 | 示例
  • 2025美赛赛前准备笔记(论文手)
  • 【IoCDI】_@Bean的参数传递
  • leetcode 901. 股票价格跨度
  • 【玩转 Postman 接口测试与开发2_016】第13章:在 Postman 中实现契约测试(Contract Testing)与 API 接口验证(上)