Ubuntu 24.10 安装Deepseek(Ollama+openwebui)

embedded/2025/2/9 6:44:43/

一、Ollama安装

1.在线安装

curl -fsSL https://ollama.com/install.sh | sh

如果curl工具没有安装先执行如下命令 

sudo apt install curl

验证curl是否安装成功

curl --version

 安装的过程中会提示输入当前系统登录用户的密码。

安装提示success后,验证安装

ollama --version

2.离线安装

 2.1下载

可以去github的release页面下载:https://github.com/ollama/ollama/releases

下载Linux对应的版本。

 2.2 安装

  在安装包同一目录下,新建一个install.sh文件,文本编辑器编辑,写入以下内容:

#!/bin/sh
# This script installs Ollama on Linux.
# It detects the current operating system architecture and installs the appropriate version of Ollama.set -eustatus() { echo ">>> $*" >&2; }
error() { echo "ERROR $*"; exit 1; }
warning() { echo "WARNING: $*"; }TEMP_DIR=$(mktemp -d)
cleanup() { rm -rf $TEMP_DIR; }
trap cleanup EXITavailable() { command -v $1 >/dev/null; }
require() {local MISSING=''for TOOL in $*; doif ! available $TOOL; thenMISSING="$MISSING $TOOL"fidoneecho $MISSING
}[ "$(uname -s)" = "Linux" ] || error 'This script is intended to run on Linux only.'ARCH=$(uname -m)
case "$ARCH" inx86_64) ARCH="amd64" ;;aarch64|arm64) ARCH="arm64" ;;*) error "Unsupported architecture: $ARCH" ;;
esacIS_WSL2=falseKERN=$(uname -r)
case "$KERN" in*icrosoft*WSL2 | *icrosoft*wsl2) IS_WSL2=true;;*icrosoft) error "Microsoft WSL1 is not currently supported. Please use WSL2 with 'wsl --set-version <distro> 2'" ;;*) ;;
esacVER_PARAM="${OLLAMA_VERSION:+?version=$OLLAMA_VERSION}"SUDO=
if [ "$(id -u)" -ne 0 ]; then# Running as root, no need for sudoif ! available sudo; thenerror "This script requires superuser permissions. Please re-run as root."fiSUDO="sudo"
fiNEEDS=$(require curl awk grep sed tee xargs)
if [ -n "$NEEDS" ]; thenstatus "ERROR: The following tools are required but missing:"for NEED in $NEEDS; doecho "  - $NEED"doneexit 1
fifor BINDIR in /usr/local/bin /usr/bin /bin; doecho $PATH | grep -q $BINDIR && break || continue
done
OLLAMA_INSTALL_DIR=$(dirname ${BINDIR})status "Installing ollama to $OLLAMA_INSTALL_DIR"
$SUDO install -o0 -g0 -m755 -d $BINDIR
$SUDO install -o0 -g0 -m755 -d "$OLLAMA_INSTALL_DIR"
#if curl -I --silent --fail --location "https://ollama.com/download/ollama-linux-${ARCH}.tgz${VER_PARAM}" >/dev/null ; then
#注释掉以下代码
#    status "Downloading Linux ${ARCH} bundle"
#    curl --fail --show-error --location --progress-bar \
#        "https://ollama.com/download/ollama-linux-${ARCH}.tgz${VER_PARAM}" | \
#        $SUDO tar -xzf - -C "$OLLAMA_INSTALL_DIR"
#    BUNDLE=1
#    if [ "$OLLAMA_INSTALL_DIR/bin/ollama" != "$BINDIR/ollama" ] ; then
#        status "Making ollama accessible in the PATH in $BINDIR"
#        $SUDO ln -sf "$OLLAMA_INSTALL_DIR/ollama" "$BINDIR/ollama"
#    fi
#else
#    status "Downloading Linux ${ARCH} CLI"
#    curl --fail --show-error --location --progress-bar -o "$TEMP_DIR/ollama"\
#    "https://ollama.com/download/ollama-linux-${ARCH}${VER_PARAM}"
#    $SUDO install -o0 -g0 -m755 $TEMP_DIR/ollama $OLLAMA_INSTALL_DIR/ollama
#    BUNDLE=0
#    if [ "$OLLAMA_INSTALL_DIR/ollama" != "$BINDIR/ollama" ] ; then
#        status "Making ollama accessible in the PATH in $BINDIR"
#        $SUDO ln -sf "$OLLAMA_INSTALL_DIR/ollama" "$BINDIR/ollama"
#    fi
#fi
#新增以下代码
LOCAL_OLLAMA_TGZ="./ollama-linux-${ARCH}.tgz${VER_PARAM}"
if [ -f "$LOCAL_OLLAMA_TGZ" ]; thenstatus "Installing from local file $LOCAL_OLLAMA_TGZ"$SUDO tar -xzf "$LOCAL_OLLAMA_TGZ" -C "$OLLAMA_INSTALL_DIR"BUNDLE=1if [ ! -e "$BINDIR/ollama" ]; thenstatus "Making ollama accessible in the PATH in $BINDIR"$SUDO ln -sf "$OLLAMA_INSTALL_DIR/ollama" "$BINDIR/ollama"fi
elseecho "Erro

http://www.ppmy.cn/embedded/160743.html

相关文章

redis之GEO 模块

文章目录 背景GeoHash 算法redis中的GeoHash 算法基本使用增加距离获取元素位置获取元素的 hash 值附近的元素 注意事项原理 背景 如果我们有需求需要存储地理坐标&#xff0c;为了满足高性能的矩形区域算法&#xff0c;数据表需要在经纬度坐标加上双向复合索引 (x, y)&#x…

ScrapeGraphAI颠覆传统网络爬虫技术

ScrapeGraphAI颠覆传统网络爬虫技术&#xff01; 引言 在互联网时代&#xff0c;数据如同油田&#xff0c;丰富而深邃。但如何有效地提取这些数据&#xff0c;仍然是许多开发者面临的艰巨任务。你有没有想过&#xff0c;传统的网络爬虫技术是否已经过时&#xff1f;如今&…

Dify Ollama本地私有化模型实践

今天给大家带来一篇deepseek本地部署&#xff0c;笔者最近由于研究AI大模型应用开发&#xff0c;笔记较少&#xff0c;后面将持续输出关于AI行业应用知识&#xff0c;请大家继续关注&#xff0c;话不多说&#xff0c;开始吧&#xff0c;啊哈哈。 DeepSeek 呢&#xff0c;最近十…

Debian安装Seafile

前言 Debian 无图形化界面通过 docker 安装 Seafile。我安装 Seafile12 没有成功&#xff0c;按照之前经验安装。 方法 安装docker 参考官方文档 Install Docker Engine on Debian。 设置 Docker’s apt repository. # Add Dockers official GPG key: sudo apt-get updat…

三、OSG应用基础

一、 OsgGA: 界面事件处理空间&#xff0c;处理操作各种操作器的最大名字空间&#xff1b; GUIEventHandler: ui 事件操作类 注意&#xff1a;在启用事件类自定义时&#xff0c;我的Win10专业版出现一个键盘输入系统兼容的问题&#xff1b; OSG Viewer输入按键无响应 1 问…

Unity3D实现UGUI拖拽移动

系列文章目录 unity工具 文章目录 系列文章目录👉前言👉一、实现原理👉二、方法一👉方法二👉壁纸分享👉总结👉前言 在 Unity UGUI 中实现拖拽移动的功能,主要基于事件系统、坐标转换和位置更新这几个关键步骤,下面详细介绍其原理 博客将会介绍如何实现UGUI拖…

mysql8 从C++源码角度看sql生成抽象语法树

MySQL 8的C源码中&#xff0c;SQL语句的词法分析和语法分析是通过一个复杂的解析器实现的&#xff0c;这个解析器将输入的SQL文本转换成抽象语法树&#xff08;AST&#xff09;。以下是该过程的主要步骤和相关组件&#xff1a; 主要组件 Lexer (词法分析器): MySQL使用了一个称…

casbin+iris实现权限控制

在现代Web应用开发中&#xff0c;权限控制是确保系统安全性和用户体验的关键部分。Casbin 是一个强大的开源访问控制库&#xff0c;支持多种访问控制模型&#xff08;如RBAC、ABAC等&#xff09;&#xff0c;而Iris则是一个高性能的Go语言Web框架。结合两者&#xff0c;我们可以…