【快捷部署】016_Ollama(CPU only版)

2024-04-10 09:36
文章标签 部署 cpu 快捷 016 ollama

本文主要是介绍【快捷部署】016_Ollama(CPU only版),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

ITHW016.jpg


📣【快捷部署系列】016期信息

编号选型版本操作系统部署形式部署模式复检时间
016Ollama(CPU only)latestCentOS 7.XDocker单机2024-04-10

注意事项:
1、目前镜像及大模型下载速度尚可,但由于容量较大,所以建议使用100Mbit/s以上的带宽。
2、2个容器镜像大小约为4G左右,大模型采用Gemma:9B,大约4.7G。
3、Ollama启动方式采用CPU only,由于没有GPU,所以运行速度较慢,建议采用16核以上的服务器。
4、为了降低入门体验门槛,所以规避掉了对于硬件GPU的要求,如想“顺滑”体验,还请使用带GPU的基础设施。
5、脚本部署过程,控制台会提示,输入内网IP地址,输入后才会继续执行,切勿一直等待。
6、本文脚本不适用于带GPU的设备,如有需要,请参见官网或关注后续博文。


一、快捷部署

#!/bin/bash
#################################################################################
# 作者:cxy@toctalk@hwy 2024-04-09                                                 
# 功能:自动部署Ollama(Docker方式) 
# 说明:如果已安装了Docker,请注释掉 install_docker,避免重复安装                                                                 
#################################################################################info(){echo -e "\033[34m 【`date '+%Y-%m-%d %H:%M:%S'`\033[0m" "\033[35m$1\033[0m "
}install_docker(){
#!/bin/bash
info "安装依赖..."
yum -y install gcc
yum -y install gcc-c++##验证gcc版本
gcc -vinfo "安装Docker(指定版本:23.0.6)"
wget https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo -O/etc/yum.repos.d/docker-ce.repo
##更新yum软件包索引
yum makecache fast## 安装docker ce cli
# 查看可安装版本:yum list docker-ce --showduplicates | sort -r
yum -y install docker-ce-23.0.6-1.el7 docker-ce-cli-23.0.6-1.el7info "启动Docker并验证"
systemctl enable docker && systemctl start docker
docker version## 创建加速器
#cd /etc/docker
#if [ ! -f "$daemon.json" ]; then
#  touch "$daemon.json"
#else
#  rm -rf daemon.json
#  touch "$daemon.json"
#fi
#tee /etc/docker/daemon.json <<-'EOF'
#{
#	"registry-mirrors": ["https://自己的镜像加速器地址"]
#}
#EOF
#systemctl daemon-reload
#systemctl restart dockerinfo "Docker(23.0.6)安装完毕!"
}# 安装 Ollama
install_Ollama(){info "参考IP地址:"$(hostname -I)read -p "请问,您当前服务器的内网IP地址是?:" inner_ipinner_ip="${inner_ip:-127.0.0.1}"docker run -d -v ollama:/root/.ollama -p 11434:11434 --name ollama --restart always ollama/ollamainfo "ollama部署完毕,开始下载gemma大模型..."docker exec -it ollama ollama run gemma “你好”info "gemma大模型加载完成,开始部署webui界面..."docker run -d -p 3000:8080 -e OLLAMA_BASE_URL=http://${inner_ip}:11434 -v open-webui:/app/backend/data --name open-webui --restart always ghcr.nju.edu.cn/open-webui/open-webui:maineip=$(curl ifconfig.me/ip)info "部署完毕,正在启动WEBUI界面,大约5分钟后,请访问:http://${eip}:3000"
}install_docker
install_Ollama

使用方法:

$ vim install-ollama-centos7.sh
$ chmod +x install-ollama-centos7.sh
$ ./install-ollama-centos7.sh
# 感谢淘客科技提供的实验资源环境

验证:

1、docker ps (能看到2个容器实例正在运行)
2、浏览器访问:http://eip:3000 (需要等待WEBUI启动,并且放通了3000端口的访问规则)# open-webui启动有些慢,通过日志查看进度
$ docker logs -f open-webui

ollama-控制台.png


二、入门体验

chat界面.png

详细体验操作请观看后续相关视频


由于是入门系列,所以仅列举了简单的体验场景。
更多信息可访问官网:https://ollama.com
更多的模型:https://ollama.com/library
open-webui:https://github.com/open-webui/open-webui
当然,您也可以关注我,关注后续相关博文。



往期精彩内容推荐

云原生:5分钟了解一下Kubernetes是什么
【快捷部署】015_Minio(latest)
【快捷部署】014_elasticsearch(7.6)
【快捷部署】011_PostgreSQL(16)
【快捷部署】010_MySQL(5.7.27)
【快捷部署】009_Redis(6.2.14)
「快速部署」第一期清单

这篇关于【快捷部署】016_Ollama(CPU only版)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/890690

相关文章

Nginx分布式部署流程分析

《Nginx分布式部署流程分析》文章介绍Nginx在分布式部署中的反向代理和负载均衡作用,用于分发请求、减轻服务器压力及解决session共享问题,涵盖配置方法、策略及Java项目应用,并提及分布式事... 目录分布式部署NginxJava中的代理代理分为正向代理和反向代理正向代理反向代理Nginx应用场景

linux部署NFS和autofs自动挂载实现过程

《linux部署NFS和autofs自动挂载实现过程》文章介绍了NFS(网络文件系统)和Autofs的原理与配置,NFS通过RPC实现跨系统文件共享,需配置/etc/exports和nfs.conf,... 目录(一)NFS1. 什么是NFS2.NFS守护进程3.RPC服务4. 原理5. 部署5.1安装NF

通过Docker容器部署Python环境的全流程

《通过Docker容器部署Python环境的全流程》在现代化开发流程中,Docker因其轻量化、环境隔离和跨平台一致性的特性,已成为部署Python应用的标准工具,本文将详细演示如何通过Docker容... 目录引言一、docker与python的协同优势二、核心步骤详解三、进阶配置技巧四、生产环境最佳实践

Nginx部署HTTP/3的实现步骤

《Nginx部署HTTP/3的实现步骤》本文介绍了在Nginx中部署HTTP/3的详细步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学... 目录前提条件第一步:安装必要的依赖库第二步:获取并构建 BoringSSL第三步:获取 Nginx

redis-sentinel基础概念及部署流程

《redis-sentinel基础概念及部署流程》RedisSentinel是Redis的高可用解决方案,通过监控主从节点、自动故障转移、通知机制及配置提供,实现集群故障恢复与服务持续可用,核心组件包... 目录一. 引言二. 核心功能三. 核心组件四. 故障转移流程五. 服务部署六. sentinel部署

SysMain服务可以关吗? 解决SysMain服务导致的高CPU使用率问题

《SysMain服务可以关吗?解决SysMain服务导致的高CPU使用率问题》SysMain服务是超级预读取,该服务会记录您打开应用程序的模式,并预先将它们加载到内存中以节省时间,但它可能占用大量... 在使用电脑的过程中,CPU使用率居高不下是许多用户都遇到过的问题,其中名为SysMain的服务往往是罪魁

MySQL中优化CPU使用的详细指南

《MySQL中优化CPU使用的详细指南》优化MySQL的CPU使用可以显著提高数据库的性能和响应时间,本文为大家整理了一些优化CPU使用的方法,大家可以根据需要进行选择... 目录一、优化查询和索引1.1 优化查询语句1.2 创建和优化索引1.3 避免全表扫描二、调整mysql配置参数2.1 调整线程数2.

Linux部署中的文件大小写问题的解决方案

《Linux部署中的文件大小写问题的解决方案》在本地开发环境(Windows/macOS)一切正常,但部署到Linux服务器后出现模块加载错误,核心原因是Linux文件系统严格区分大小写,所以本文给大... 目录问题背景解决方案配置要求问题背景在本地开发环境(Windows/MACOS)一切正常,但部署到

使用IDEA部署Docker应用指南分享

《使用IDEA部署Docker应用指南分享》本文介绍了使用IDEA部署Docker应用的四步流程:创建Dockerfile、配置IDEADocker连接、设置运行调试环境、构建运行镜像,并强调需准备本... 目录一、创建 dockerfile 配置文件二、配置 IDEA 的 Docker 连接三、配置 Do

MySQL 主从复制部署及验证(示例详解)

《MySQL主从复制部署及验证(示例详解)》本文介绍MySQL主从复制部署步骤及学校管理数据库创建脚本,包含表结构设计、示例数据插入和查询语句,用于验证主从同步功能,感兴趣的朋友一起看看吧... 目录mysql 主从复制部署指南部署步骤1.环境准备2. 主服务器配置3. 创建复制用户4. 获取主服务器状态5