在Ubuntu服务器部署Open-webui

open-webUI 是一款类似于chatgpt的webui程序, 可以私有化模型本地部署,可以实现 多模态AI聊天 , AI 翻译 , AI搜索,语音转文本, 文本转语音, 文生图,代码助手,非常值得推荐的本地webui之一。本文介绍在Ubuntu22.04服务器上部署open-webui的全过程!

在Ubuntu服务器部署Open-webui

安装open-webui服务

新建一个虚拟环境

conda create -n openwebui python=3.11 -y && conda activate openwebui

安装依赖

原命令

pip install torch
pip install git+https://github.com/huggingface/transformers
pip install git+https://github.com/huggingface/accelerate

修改为国内友好的命令

pip install torch torchvision -i https://pypi.tuna.tsinghua.edu.cn/simple
pip install transformers accelerate -i https://pypi.tuna.tsinghua.edu.cn/simple

安装open-webui

pip install open-webui

设置 Hugging Face 国内镜像源

export HF_ENDPOINT=https://hf-mirror.com

临时生效(仅在当前终端窗口)

建议采用下面这种永久生效的方案

echo 'export HF_ENDPOINT="https://hf-mirror.com"' >> ~/.bashrc
source ~/.bashrc

禁用离线模式(允许下载)(如果没有开启过离线模式,该步骤不需要)

export HF_HUB_OFFLINE=0

启动open-webui(指定端口)服务

open-webui serve --port 10001

在本地可以直接访问 http://127.0.0.1:10001

初次登录系统需要注册一个管理员的账号,并且首次登录的时候会下载一些模型和文件,导致可能出现登录之后一片空白的假死现象,耐心等待文件下载完成即可!

在Ubuntu服务器部署Open-webui

 

在Ubuntu服务器部署Open-webui

快捷启动和关闭open-webui服务

为了便于统一管理,我们可以新建一个目录,专门用来存放快捷启动和快捷关闭open-webui的脚步

mkdir openwebui

然后进入到该文件夹中

cd openwebui

快捷启动open-webui服务

新建一个start_openwebui.sh文件

vim start_openwebui.sh

文件内容复制如下的内容:

#!/bin/bash

# 激活Conda环境所需的初始化(根据你的Conda安装路径调整)
source ~/miniconda3/etc/profile.d/conda.sh

# 激活指定的Conda环境
conda activate openwebui

# 在后台运行命令并将输出重定向到日志文件
nohup open-webui serve --port 10001 > openwebui.log 2>&1 &

echo "OpenWebUI 已在后台启动,端口 10001。日志见 openwebui.log"

保存文件,退出编辑

为文件赋予执行权限

chmod +x start_openwebui.sh

运行脚本

./start_openwebui.sh

说明:

  1. Conda初始化source ~/miniconda3/etc/profile.d/conda.sh 会根据你的Conda安装路径初始化。如果你使用的是Anaconda或自定义安装路径,请修改为正确的路径(如 ~/anaconda3/...)。
  2. 后台运行nohup 配合 & 可让命令在后台持续运行,即使终端关闭也不会中断进程。
  3. 日志记录:所有输出(包括错误信息)会被重定向到 openwebui.log 文件。
  4. 验证运行:可通过 ps aux | grep open-webui 查看进程状态,或检查日志文件。

快捷关闭open-webui服务

同样新建一个stop_openwebui.sh文件

vim stop_openwebui.sh

将下面的内容粘贴为文件内容

#!/bin/bash

# 通过完整命令行特征匹配进程
PROCESS_PATTERN="open-webui serve --port 10001"

# 查找并终止进程
pkill -f "$PROCESS_PATTERN"

# 检查是否成功停止
if [ $? -eq 0 ]; then
echo "OpenWebUI 服务已停止(端口 10001)"
else
echo "未找到运行中的 OpenWebUI 服务"
fi

# 可选:二次验证进程是否存活
# sleep 1
# pgrep -f "$PROCESS_PATTERN" >/dev/null && echo "[警告] 仍有残留进程" || echo "[状态] 进程已完全退出"

保存文件,退出编辑

给文件赋予执行权限

chmod +x stop_openwebui.sh

运行脚本即可退出正在后台运行的open-webui服务

./stop_openwebui.sh

原创文章,作者:朋远方,如若转载,请注明出处:https://caovan.com/zaiubuntufuwuqibushuopen-webui/.html

Like (0)
Donate 微信扫一扫 微信扫一扫
朋远方的头像朋远方
Previous 2025年3月2日 上午12:31
Next 2025年3月8日 下午10:40

相关推荐

发表回复

Please Login to Comment