服务器Ubuntu22.04系统 使用dcocker部署安装ollama和搭配open_webui使用
创始人
2024-09-26 00:19:17
0
服务器Ubuntu22.04系统 使用dcocker部署安装ollama和搭配open_webui使用

一、ubuntu和docker基本环境配置

1.更新包列表:
  • 打开终端,输入以下命令:
sudo apt-get update 
sudo apt upgrade 

更新时间较长,请耐心等待

2. 安装docker依赖
sudo apt-get install ca-certificates curl gnupg lsb-release 
3. 添加docker密钥
curl -fsSL http://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add - 
4.添加阿里云docker软件源
sudo add-apt-repository "deb [arch=amd64] http://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable" 

如果是arm架构,命令换成下面这个,否则第5步会出错

sudo add-apt-repository "deb [arch=arm64] http://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable" 
5.安装docker
apt-get install docker-ce docker-ce-cli containerd.i 
6.安装完成docker测试
docker -v 

在这里插入图片描述

7. docker配置国内镜像源
  • 7.1 编辑配置文件
vi /etc/docker/daemon.json 

按i进入编辑模式

加入以下内容:

{   "registry-mirrors": [     "https://docker.mirrors.ustc.edu.cn",     "https://hub-mirror.c.163.com",     "https://docker.m.daocloud.io",      "https://ghcr.io",     "https://mirror.baidubce.com",     "https://docker.nju.edu.cn"   ] } 

按ESC键退出编辑模式,接着输入:wq,保存并退出

  • 7.2 重新加载docker
sudo systemctl daemon-reload 
  • 7.3 重启docker
sudo systemctl restart docker 
2. 安装英伟达显卡驱动
2.1 使用wget在命令行下载驱动包

注意,这里是要根据自己的机器选择驱动版本进行安装,这里是选择的是aarch64架构的550.90.07驱动,其他的可以去英伟达官网自己找。官方高级驱动搜索 。注意,选择cuda的时候,要选择你要安装的版本(我这里是选择最新的12.4,除了12.4,还可以兼容12.4以下的。)

wget https://cn.download.nvidia.com/tesla/550.90.07/NVIDIA-Linux-aarch64-550.90.07.run 
2.2 更新软件列表和安装必要软件、依赖
sudo apt-get update sudo apt-get install g++ sudo apt-get install gcc sudo apt-get install make 
2.2 卸载原有驱动(如果执行nvidia-smi报错可以不用执行这一步)
sudo apt-get remove --purge nvidia*  

使用vim修改配置文件

sudo vim /etc/modprobe.d/blacklist.conf 

按i键进入编辑模式,在文件尾增加两行:

blacklist nouveau options nouveau modeset=0 

按esc键退出编辑模式,输入:wq保存并退出
更新文件

sudo update-initramfs –u 

重启电脑:

sudo reboot 
2.3 安装驱动

授予执行权限(记得将文件名换成自己的驱动文件)

sudo chmod 777 NVIDIA-Linux-aarch64-550.90.07.run 

执行安装命令

sudo ./NVIDIA-Linux-aarch64-550.90.07 

检测显卡驱动是否安装成功

nvidia-smi 

出现以下界面则证明驱动安装成功(注意,Processes是我在执行的进程,如果你是新安装的,应该是空白的。)

在这里插入图片描述

2.4 安装CUDA

注意:这里选择安装的版本一定要等于或者低于你执行nvidia-smi命令后显示的CUDA Version那个版本,比如我是显示12.4,则我可以安装12.4或者是之前的版本。驱动与CUDA版本对应关系,可以看官网这里介绍,驱动版本与CUDA版本的对应表

wget https://developer.download.nvidia.com/compute/cuda/12.4.0/local_installers/cuda_12.4.0_550.54.14_linux.run 

输出accept开始安装
在这里插入图片描述
注意这里要按enter取消勾选第一个选项,因为之前已经安装了驱动
在这里插入图片描述
然后选择Install开始安装

sudo sh cuda_12.4.0_550.54.14_linux.run 
2.5 环境变量配置

以vim方式打开配置文件

sudo vim ~/.bashrc 

在文件尾中加入以下两行:

export PATH="/usr/local/cuda-12.4/bin:$PATH" export LD_LIBRARY_PATH="/usr/local/cuda-12.4/lib64:$LD_LIBRARY_PATH" 

更新环境变量

source ~/.bashrc 

检测CUDA是否安装成功

nvcc -V 

出现下面的信息则证明CUDA安装成功

在这里插入图片描述

3. 安装conda
3.1 软件下载
wget -c https://repo.anaconda.com/archive/Anaconda3-2023.03-1-Linux-x86_64.sh bash Anaconda3-2023.03-1-Linux-x86_64.sh 
3.2 设置环境变量
vim /etc/profile 

在末尾添加环境变量

export PATH="~/anaconda3/bin:$PATH" 
vim ~/.bashrc export PATH="~/anaconda3/bin:$PATH" 

刷新环境变量

source /etc/profile source ~/.bashrc 

然后conda -V要是正常就安装成功了

conda -V 
3.3 conda配置

配置清华镜像源
代码如下:

conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/ conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/ conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/ 

设置搜索时显示通道地址

conda config --set show_channel_urls yes 

配置pip 镜像源

pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple 

三、使用docker安装ollama

1. 使用docker拉取ollama镜像
docker pull ollama/ollama:latest 

国内镜像

docker pull dhub.kubesre.xyz/ollama/ollama:latest 
2.使用docker运行以下命令来启动 Ollama 容器
docker run -d --gpus=all --restart=always -v /home/docker/ollama:/root/.ollama -p 11434:11434 --name ollama ollama/ollama 

使ollama保持模型加载在内存(显存)中

  • 参考文章
    ollama如何保持模型加载在内存(显存)中或立即卸载
  • 执行以下命令:
docker run -d --gpus=all -e OLLAMA_KEEP_ALIVE=-1 --restart=always -v /home/docker/ollama:/root/.ollama -p 11434:11434 --name ollama ollama/ollama 
  • 错误信息

    如果在启动容器的时候,提示:Error response from daemon: could not select device driver “” with capabilities: [[gpu]]

    这是由于没有配置好docker运行环境导致的,执行安装容器运行环境(Ubuntu为例),参考docker 报错:不能选择设备驱动 could not select device driver 的解决方法

# 确保显卡驱动已安装 nvidia-smi  # 创建包仓库和GPG key distribution=$(. /etc/os-release;echo $ID$VERSION_ID) \        && curl -fsSL https://nvidia.github.io/libnvidia-container/gpgkey | sudo gpg --dearmor -o /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg \        && curl -s -L https://nvidia.github.io/libnvidia-container/$distribution/libnvidia-container.list | \              sed 's#deb https://#deb [signed-by=/usr/share/keyrings/nvidia-container-toolkit-keyring.gpg] https://#g' | \              sudo tee /etc/apt/sources.list.d/nvidia-container-toolkit.list  # 更新包列表之后安装 nvidia-docker2 包(以及依赖) sudo apt-get update sudo apt-get install -y nvidia-docker2  # 安装完毕重启容器 sudo systemctl restart docker 
3.使用ollama下载模型
  • 这里示例下载阿里的通义千问
docker exec -it ollama ollama run qwen2 
  • 运行效果如图:
    在这里插入图片描述

  • 模型库

模型参数数量大小下载方式
Llama 27B3.8GBdocker exec -it ollama ollama run llama2
Mistral7B4.1GBdocker exec -it ollama ollama run mistral
Dolphin Phi2.7B1.6GBdocker exec -it ollama ollama run dolphin-phi
Phi-22.7B1.7GBdocker exec -it ollama ollama run phi
Neural Chat7B4.1GBdocker exec -it ollama ollama run neural-chat
Starling7B4.1GBdocker exec -it ollama ollama run starling-lm
Code Llama7B3.8GBdocker exec -it ollama ollama run codellama
Llama 2 Uncensored7B3.8GBdocker exec -it ollama ollama run llama2-uncensored
Llama 213B7.3GBdocker exec -it ollama ollama run llama2:13b
Llama 270B39GBdocker exec -it ollama ollama run llama2:70b
Llama 3.18B4.7GBdocker exec -it ollama ollama run llama3.1:70
Orca Mini3B1.9GBdocker exec -it ollama ollama run orca-mini
Vicuna7B3.8GBdocker exec -it ollama ollama run vicuna
LLaVA7B4.5GBdocker exec -it ollama ollama run llava
Gemma2B1.4GBdocker exec -it ollama ollama run gemma:2b
Gemma7B4.8GBdocker exec -it ollama ollama run gemma:7b
4.使用ollama下载模型

下载微调版本的,可以看这篇文章,[HuggingFace + Ollama + Llama 3.1:轻松搞定Llama 3.1中文微调版本安装](
四、使用docker安装open-webui

1. docker部署ollama web ui

main版本

docker run -d -p 30131:8080 --gpus all --add-host=host.docker.internal:host-gateway -v open-webui:/app/backend/data --name open-webui --restart always ghcr.nju.edu.cn/open-webui/open-webui:main 

cuda版本

docker run -d -p 30131:8080 --gpus all --add-host=host.docker.internal:host-gateway -v open-webui:/app/backend/data --name open-webui --restart always ghcr.nju.edu.cn/open-webui/open-webui:cuda 
  • 安装成功后,可以在另一台计算机进行访问,如下:
    在这里插入图片描述
2.注册账号
  • 默认第一个账号是管理员
    在这里插入图片描述
3.成功进入:

在这里插入图片描述

4. 聊天界面

在这里插入图片描述
在这里插入图片描述

参考来源:https://blog.csdn.net/weixin_62798503/article/details/140658151

相关内容

热门资讯

科普教程!炸金花链接房卡怎么搞... 微信游戏中心:新大海在哪里买打开微信,添加客服【8488009】,进入游戏中心或相关小程序,搜索“微...
玩家攻略,金花房卡制作链接大圣... 微信游戏中心:大圣大厅/新西部房卡在哪里买打开微信,添加客服微信【88355042】,进入游戏中心或...
安卓系统换苹果数据怎么,安卓到... 你是不是也和我一样,从安卓系统跳到了苹果的怀抱?换系统后,是不是发现手机里的数据怎么也迁移不过来?别...
秒懂百科”牛牛是如何购买的“新... 是如何购买的是一款非常受欢迎的棋牌游戏,咨询房/卡添加微信:113857776许多玩家在游戏中会购买...
科普教程!拼三张链接房卡怎么搞... 微信游戏中心:新蛮王在哪里买打开微信,添加客服【33903369】,进入游戏中心或相关小程序,搜索“...
正规平台有哪些,金花房卡制作链... 毛豆互娱房卡更多详情添加微:33549083、 2、在商城页面中选择房卡选项。 3、根...
一秒了解”新详心房卡客服“人海... 一秒了解”新详心房卡客服“人海大厅房卡充值微信房卡充值 添加房卡批售商:微【113857776】复制...
我来教你/牛牛房卡制作链接嫦娥... 微信游戏中心:嫦娥大厅房卡在哪里买打开微信,添加客服微信【88355042】,进入游戏中心或相关小程...
推荐一款!游戏推荐牛牛房卡出售... 您好!微信烛龙大厅/新道游大厅链接获取房卡可以通过以下几种方式购买: 1.微信渠道:(烛龙大厅/新...
实测分享”新神牛房卡“先锋大厅... 来教大家如何使用房卡充值房卡充值 添加房卡批售商:微【113857775】复制到微信搜索、直接添加房...
一分钟了解!斗牛房间怎么创建的... 今 日消息,火神大厅房卡添加微信33549083 苹果今日发布了 iOS 16.1 正式版更新,简单...
1分秒分析”新众亿怎么买房卡“... 来教大家如何使用怎么买房卡房卡充值 添加房卡批售商:微【113857775】复制到微信搜索、直接添加...
玩家须知”新下游是如何购买的“... 玩家须知”新下游是如何购买的“牛牛房卡充值游戏中心打开微信,添加客服【113857776】,进入游戏...
头条推荐!牛牛房卡代理火星大厅... 今 日消息,火星大厅/新道游房卡添加微信33549083 苹果今日发布了 iOS 16.1 正式版更...
头条推荐!金花房卡批发价老神兽... 老神兽/海贝大厅房卡更多详情添加微:33549083、 2、在商城页面中选择房卡选项。 ...
科技实测!游戏推荐牛牛房卡出售... 大众互娱是一款非常受欢迎的棋牌游戏,咨询房/卡添加微信:【3329006910】或QQ:332900...
秒懂百科”黄帝大厅房卡购买“卡... 来教大家如何使用房卡充值房卡充值 添加房卡批售商:微【113857775】复制到微信搜索、直接添加房...
头条推荐!游戏推荐牛牛房卡出售... 头条推荐!游戏推荐牛牛房卡出售皇豪互娱/新道游/房卡怎么搞Sa9Ix苹果iPhone 17手机即将进...
正规平台有哪些,金花房卡怎么购... 您好!微信牛魔王/皇豪互娱大厅链接获取房卡可以通过以下几种方式购买: 1.微信渠道:(牛魔王/皇豪...
安卓系统引导加载程序,揭秘启动... 你有没有想过,当你打开手机的那一刻,安卓系统引导加载程序(Bootloader)是如何悄无声息地为你...