目录
本次实验环境使用的ubuntu 24.04 LTS长期支持版本
检查系统架构
uname -m
cat /etc/os-release
环境准备
修改国内源
sudo su
cp /etc/apt/sources.list /etc/apt/sources.list.backup
nano /etc/apt/sources.list
添加内容如下:
deb http://repo.huaweicloud.com/ubuntu/ jammy main restricted universe multiverse
deb http://repo.huaweicloud.com/ubuntu/ jammy-security main restricted universe multiverse
deb http://repo.huaweicloud.com/ubuntu/ jammy-updates main restricted universe multiverse
deb http://repo.huaweicloud.com/ubuntu/ jammy-proposed main restricted universe multiverse
deb http://repo.huaweicloud.com/ubuntu/ jammy-backports main restricted universe multiverse
或
deb http://mirrors.aliyun.com/ubuntu/ jammy main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ jammy-security main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ jammy-updates main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ jammy-proposed main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ jammy-backports main restricted universe multiverse
ctrl + o 保存文件
ctrl + x 退出编辑器
为了确保顺利安装,需确认操作系统已更新至最新状态并安装必要的依赖包:
sudo su
apt update -y
apt upgrade -y
apt install vim tar -y
如果你想包括内核和一些重要更新,可以使用:
sudo apt full-upgrade
一、安装Ollama
下载安装(下载太慢的可以考虑去TB店铺也就1元左右的代下载费用)
如果是x86_64
https://github.com/ollama/ollama/releases/download/v0.11.6/ollama-linux-amd64.tgz
如果是ARM64
https://github.com/ollama/ollama/releases/download/v0.11.6/ollama-linux-arm64.tgz
本地下载完成后使用xftp进行上传
解压Ollama
找到文件名称为ollama-linux-amd64.tgz 的文件
文件结构如下图
查看分区情况,避免空间不足
df -h
压缩包直接解压到/usr目录下,可以省去配置环境变量的步骤
具体的解压命令如下:
cd /home/Adata
tar -xvf ollama-linux-amd64.tgz -C /usr
校验ollama 是否安装成功
在命令的末尾添加 & 来将命令放入后台执行
ollama serve &
ollama -v
二、拉取deepseekR1:1.5b
ollama run deepseek-r1:1.5b
此时可用用最原始的cmd窗口进行对话
三、安装 Open-WebUI
【失败的步骤可忽略】
按照官方文档指引,可以通过 Python 的包管理工具 pip 来安装 Open-WebUI 库。
先设置pypi源,不然下载速度慢得怀疑人生
笔者Ubuntu 24.04.3 LTS 版本自带的python版本是3.12
重新打开一个ssh窗口,不然命令就被理解成deepseek的对话了,首先安装pip3
sudo su
apt install python3-pip -y
pip3 install --upgrade pip setuptools wheel
# 设置华为云镜像源
pip3 config set global.index-url https://repo.huaweicloud.com/repository/pypi/simple
pip3 config set global.trusted-host repo.huaweicloud.com
# 查看当前配置
pip3 config get global.index-url
开始安装open-webui
pip3 install open-webui
在 Ubuntu 系统上使用 pip3 安装 open-webui 时遇到 externally-managed-environment 错误,通常是因为你的 Python 环境是由系统的包管理器(如 apt)管理的,而不是由 pip 直接管理的。这种情况在 Ubuntu 系统中较为常见,因为 Ubuntu 使用 apt 来管理大部分 Python 包。
【成功的步骤-认真看】
1.下载并安装anaconda
https://www.anaconda.com/download
需要注册并登录
建议使用xftp上传
cd /home/Adata
chmod +x Anaconda3-2025.06-0-Linux-x86_64.sh
./Anaconda3-2025.06-0-Linux-x86_64.sh
# 快速使.bashrc文件生效
source /root/.bashrc
选做
#设置conda镜像源
conda config --add channels https://repo.huaweicloud.com/anaconda/pkgs/free/
conda config --set show_channel_urls yes
# 设置pip镜像源
pip config set global.index-url https://mirrors.huaweicloud.com/repository/pypi/simple/
通过查看版本验证安装情况(部分系统需要重启后执行)
conda --version
或使用大写的V查看版本
conda -V
创建虚拟环境
使用 Anaconda 创建一个新的虚拟环境。例如,你可以命名为 condawebui :
conda create -n condawebui python=3.11
这里我们使用 Python 3.11 版本,你可以根据需要选择其他版本。
激活虚拟环境
激活你刚刚创建的虚拟环境:
conda activate condawebui
Anaconda常用的命令
- 查看所有环境
conda env list
- 切换到另一个环境
conda activate 环境名称
- 回到基础环境
conda deactivate
2. 安装依赖nodejs
Node.js 与 npm 关系详解
共生关系:npm 是 Node.js 的官方包管理器,随 Node.js 自动安装
https://deb.nodesource.com/
#1.安装最新版nodejs
curl -sL https://deb.nodesource.com/setup_20.x -o nodesource_setup.sh
bash nodesource_setup.sh
apt install nodejs -y
#2.测试nodejs npm是否安装正确
echo nodejs版本为:`node -v`
echo npm 版本为:`npm -v`
#3.设置npm镜像源
npm config set registry https://mirrors.huaweicloud.com/repository/npm/
3. 下载并安装 Open-WebUI
为了便于二次开发open-webui,这里直接从github下载源码安装
https://github.com/open-webui/open-webui
一般很难下载下来,建议去TB找个github代下,大概1元就搞定,下载后上传到服务器
cd /home/Adata
unzip open-webui-main.zip -d ~/open-webui # 解压到用户目录
cd ~/open-webui/open-webui-main # 进入项目目录
设置镜像
npm install -g nrm
nrm ls # 查看可用镜像
nrm use huawei # 切换到huawei源
创建.env文件
-R 递归复制目录内容(虽然此处是文件,但保留此特性)
-P 保持原始文件的物理路径(不跟随符号链接)
-p 保留文件属性(包括权限、时间戳等)
cp -RPp .env.example .env
前端部署
npm install # 从npm仓库下载并安装package.json中声明的依赖项
npm run build # 构建生产环境静态文件
编译报错,换windows环境也依然存在这个问题。
后端部署
cd backend/
conda activate condawebui # 进入前面配置conda虚拟环境
pip install -r requirements.txt # 依据requirements.txt安装依赖
服务启动
./start.sh # 启动服务(默认监听8080端口)
四、配置服务以便开机启动
ollama服务
配置 ollama 服务
mkdir -p ~/ollama/models
vim /etc/systemd/system/ollama.service
内容添加如下:
[Unit]
Description=Ollama Service
After=network-online.target
[Service]
ExecStart=/usr/bin/ollama serve
User=root
Group=root
Restart=always
RestartSec=3
Environment="PATH=$PATH"
#指定模型存储位置,可以直接在外网下载好模型,打包解压到内网的ollama的模型目录下,就能实现离线安装了
Environment="OLLAMA_MODELS=~/ollama/models"
#解决ollama无法访问的问题
Environment="OLLAMA_HOST=0.0.0.0:11434"
[Install]
WantedBy=default.target
启动服务:
sudo systemctl daemon-reload
sudo systemctl enable ollama
配置Ollama 全局环境变量
vim /etc/profile.d/ollama.sh
#ollama.sh内容如下
PATH=$PATH:/usr/bin
export PATH
#刷新
source /etc/profile
open-webui服务
配置 DeepSeek
针对 DeepSeek 的具体配置文件路径通常位于 /etc/deepseek/config.yaml 或者项目根目录下的同名文件内。根据实际需求调整参数设置以适应生产环境的要求。
将两者集成在一起
为了让两个应用能够协同工作,可以考虑利用反向代理的方式让它们共享同一个域名的不同子路径;也可以直接修改其中一个项目的路由规则使其指向另一个的服务地址。具体的实现取决于所使用的框架和技术栈的选择。
常见问题及解决方案
Docker无法正常启动:可能是 SELinux 设置阻止了某些权限。尝试临时关闭它来排查问题
setenforce 0
Pip 安装失败:检查网络连接状况,有时国内镜像源可能会更稳定一些。可通过指定 -i https://pypi.tuna.tsinghua.edu.cn/simple --trusted-host pypi.tuna.tsinghua.edu.cn
参数切换为清华大学提供的 PyPI 源。
找不到特定版本的软件包:当遇到这种情况时,请查阅相关产品的发行说明或社区论坛获取更多信息和支持
配置 ollama 服务
vim /etc/systemd/system/ollama.service
内容添加如下:
[Unit]
Description=Ollama Service
After=network-online.target
[Service]
ExecStart=/opt/app/middles/ollama/bin/ollama serve
User=root
Group=root
Restart=always
RestartSec=3
Environment="PATH=$PATH"
#指定模型存储位置,可以直接在外网下载好模型,打包解压到内网的ollama的模型目录下,就能实现离线安装了
Environment="OLLAMA_MODELS=/opt/app/middles/ollama/models"
#解决ollama无法访问的问题
Environment="OLLAMA_HOST=0.0.0.0:11434"
[Install]
WantedBy=default.target