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

ubuntu 24.04 通过部署ollama提供大模型api接口

想部署一个大模型api接口,供自己在内网调用。
用AI生成部署方法,很多时候驴唇不对马嘴。
干脆自己写一篇完整的部署流程。

服务器环境

  • ubuntu 24.04
  • 显卡 NVIDA 3090(显存24G)
  • 内存 32G
  • 硬盘 1T

部署

安装 ubuntu 驱动

踩过坑的痛!!!因为我是空白系统,直接上来安装ollama,确实装成功了,但发现跑起来非常慢,就连说个“你好”,都要5秒才回应。通过监控,原来是GPU没跑起来,是用CPU跑的,真蛋疼!

安装推荐驱动命令:

- sudo ubuntu-drivers autoinstall 
- 安装完重启重启命令:sudo reboot

安装cuda

如果可以直接安装,那么不需要补充cuda仓库,直接安装就好了。

# 先补充cuda仓库,这里一定注意自己匹配的系统版本和架构(我用的ubuntu 24.04,x86_64架构):- sudo apt-key adv --fetch-keys https://developer.download.nvidia.cn/compute/cuda/repos/ubuntu2404/x86_64/3bf863cc.pub`- sudo add-apt-repository "deb https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2404/x86_64/ /"
# 安装:- sudo apt-get update- sudo apt-get install -y nvidia-container-toolkit(安装完重启)

安装ollama

1. 安装命令(早上7点半速度很快):curl -fsSL https://ollama.com/install.sh | sh
2. 验证ollama:ollama --version
3. 下载模型:ollama pull gpt-oss:20b
4. 增加对外接口的配置,配置文件里加一行:Environment="OLLAMA_HOST=0.0.0.0:11434"
5. 重载配置:sudo systemctl daemon-reload
6. 重启服务:sudo systemctl restart ollama
7. 暂停服务:sudo systemctl stop ollama8. 其中第4步,我实测没生效,改用全局变量:
- 设置全局变量:sudo vim /etc/environment,
- 在后面追加一行:OLLAMA_HOST=0.0.0.0:11434,
- 别忘了重启系统:sudo reboot

排查:

  • ollama的配置文件:
/etc/systemd/system/ollama.service
  • 查看端口占用:
sudo lsof -i :11434

监控显存

watch -n 1 nvidia-smi  # 每秒刷新一次,显示显存、利用率、温度等
watch -n 1 'nvidia-smi --query-gpu=memory.used,memory.total --format=csv' #只看显存

防火墙放行

# 添加放行端口:
- sudo ufw allow 11434/tcp
- sudo ufw allow 11434/udp # udp协议不用可以不加
# 查看防火墙规则:
sudo ufw status verbose
    http://www.dtcms.com/a/332665.html

    相关文章:

  • 线程P5 | 单例模式[线程安全版]~懒汉 + 饿汉
  • CANDB++中的CAN_DBC快速编辑方法,使用文本编辑器(如notepad++和VScode)
  • Redis 知识点与应用场景
  • 六十六、【Linux数据库】MySQL数据导入导出 、 管理表记录 、 匹配条件
  • 日本服务器哪些服务商是可以免费试用的?
  • 拒绝“效果图”返工:我用Substance 3D Stager构建产品可视化工作流
  • 计算机视觉(opencv)实战五——图像平滑处理(均值滤波、方框滤波、高斯滤波、中值滤波)附加:视频逐帧平滑处理
  • vue2生命周期详解
  • Claude Opus 4.1深度解析:抢先GPT5发布,AI编程之王主动出击?
  • 【线上问题】1分钟学会如何定位 Java 应用 CPU 飙升问题
  • Spring中存在两个相同的Bean是否会报错?
  • Amazon Bedrock如何轻松实现复杂的生成式AI模型?
  • 纯C++实现halcon的threshold
  • 【Java EE进阶 --- SpringBoot】初识Spring(创建SpringBoot项目)
  • zynq代办事项
  • Vue 侦听器(watch 与 watchEffect)全解析2
  • 【100页PPT】数字化转型集团信息化总体解决方案(附下载方式)
  • Swift 实战:用最长递增子序列算法解“俄罗斯套娃信封”问题(LeetCode 354)
  • 日本服务器租用选哪个机房国内访问比较快?
  • 【LINUX网络】HTTP协议基本结构、搭建自己的HTTP简单服务器
  • 企微用户部门同步HRS系统
  • 电脑上练打字用什么软件最好:10款打字软件评测
  • 滑窗|贪心
  • Sonatype Nexus Repository Manager docker版本安装
  • [优选算法专题二滑动窗口——无重复字符的最长子串]
  • Linux应用层开发--线程
  • react性能优化之useRef和useState
  • Nginx性能优化与安全配置:打造高性能Web服务器
  • Unity:PlayerPrefs笔记
  • 标准电子邮件地址格式(RFC 5322 里的 mailbox 语法)