在ubuntu24.04上安装Ollama并设置跨域访问

Ollama 是一个基于 Go 语言开发的简单易用的本地大模型运行框架。它同时支持Nvidia和AMD显卡,最主要的是国内下载模型的速度很快。

我们在前几期文章中介绍的lobechat,oneapi等应用,可以方便的利用ollama构建本地大模型运行平台。接下来我们就介绍如何构建ollama的运行平台。

设备构成:

1、Nvidia P40两片,32G内存。

2、ubuntu24.04操作系统。

具体安装过程如下:

一:安装Ollama

1、准备环境

复制代码
#安装gcc和g++
sudo apt update
sudo apt install gcc g++

#安装make
sudo apt install make
sudo apt install make-guile

2、安装Nvidia驱动

复制代码
#编辑黑名单配置。
vim /etc/modprobe.d/blacklist.conf

#在文件的最后添加下面两行。

blacklist nouveau
options nouveau modeset=0

#然后,输入下面的命令更新并重启。

update-initramfs -u
reboot

#重启后输入下面的命令验证是否禁用成功,成功的话这行命令不会有输出。
lsmod | grep nouveau

#驱动安装
#首先,使用apt卸载已有的驱动,命令如下。

apt-get purge nvidia*

#进入驱动所在路径,赋予执行权限,并执行安装命令

chmod +x NVIDIA-Linux-x86_64-535.86.05.run
./NVIDIA-Linux-x86_64-535.86.05.run

3、安装cuda

复制代码
#下载cuda
wget https://developer.download.nvidia.com/compute/cuda/12.4.0/local_installers/cuda_12.4.0_550.54.14_linux.run

#安装cuda
./cuda_12.4.0_550.54.14_linux.run

设置环境变量

vim ~/.bashrc

在文件最下面加上这些

复制代码
PATH=$PATH:/usr/local/cuda/bin  
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda/lib64  
LIBRARY_PATH=$LIBRARY_PATH:/usr/local/cuda/lib64

使生效

复制代码
source ~/.bashrc

4、安装cudnn

下载cudnn(需要自己注册用户),下载地址如下:

cuDNN Archive | NVIDIA Developer

安装cudnn

复制代码
xz -d cudnn-linux-x86_64-8.9.4.25_cuda12-archive.tar.xz
tar -xvf cudnn-linux-x86_64-8.9.4.25_cuda12-archive.tar

cp /root/cudnn-linux-x86_64-8.9.4.25_cuda12-archive/include/cudnn.* /usr/local/cuda/include/
cp /root/cudnn-linux-x86_64-8.9.4.25_cuda12-archive/lib/* /usr/local/cuda/lib64/
chmod a+r /usr/local/cuda/include/cudnn*.h /usr/local/cuda/lib64/libcudnn*

5、安装python环境

复制代码
apt-get install python3 python3-pip

6、安装ollama

复制代码
curl -fsSL https://ollama.com/install.sh | sh

二:配置ollama跨域访问

复制代码
vim /etc/systemd/system/ollama.service

修改成下面这样

复制代码
[Unit]
Description=Ollama Service
After=network-online.target

[Service]
ExecStart=/usr/bin/ollama serve
User=ollama
Group=ollama
Restart=always
RestartSec=3

Environment="OLLAMA_HOST=0.0.0.0"
Environment="OLLAMA_ORIGINS=*"

[Install]
WantedBy=default.target

可以使用ollama --version再次确认安装是否成功。

重新加载systemd守护进程并启用Ollama服务

复制代码
sudo systemctl daemon-reload
sudo systemctl enable ollama
sudo systemctl start ollama

三:Ollama基本操作

1、下载模型

复制代码
ollama run llama3.1:8b

仅拉取镜像,但不运行

复制代码
ollama pull llama3.1:8b

2、删除模型

复制代码
#显示安装的模型列表
ollama list

#删除指定的模型
ollama rm llama3.1:8b

3、卸载ollama

删除systemd中创建的ollama服务

复制代码
sudo systemctl stop ollama
sudo systemctl disable ollama
sudo rm /etc/systemd/system/ollama.service
sudo systemctl daemon-reload

删除ollama的二进制文件

复制代码
sudo rm /usr/local/bin/ollama

删除用户和组

复制代码
sudo userdel ollama
sudo groupdel ollama
相关推荐
phltxy1 小时前
LangChain从模型输出到RAG数据管道实战
服务器·人工智能·深度学习·语言模型·langchain
我星期八休息2 小时前
网络编程—应用层HTTP协议
linux·运维·开发语言·前端·网络·网络协议·http
一个天蝎座 白勺 程序猿2 小时前
从电网改造踩坑说起:深度拆解时序大模型TimechoAI的自主可控与安全合规底气
大数据·运维·服务器·大模型·timechoai
ShineWinsu2 小时前
对于Linux:UDPsocket编程基础的解析
linux·运维·网络协议·udp·ip·端口号·进程间通信
hehelm3 小时前
AI大模型接入SDK—通用模块设计
linux·开发语言·c++
Spider Cat 蜘蛛猫4 小时前
Anthropic的skill-creator使用分享
运维·服务器
liulilittle5 小时前
论分布式系统的半开闭问题
服务器·网络·分布式·系统架构·竞态
cyforkk5 小时前
Vercel 绑定自定义域名极简配置指南
服务器·前端·网络
Ai拆代码的曹操6 小时前
K8s Pod Pending 逐层排查:从 FailedScheduling 到 PVC StorageClass 不存在的实战记录
java·linux·kubernetes
wangbing11257 小时前
JPA下自定义主键
java·linux·服务器