Alibaba Cloud Linux 部署Open WebUI并上传知识库

参考:🏡 Home | Open WebUI

前置依赖安装Ollama安装DeepSeek R1,请参考:

Alibaba Cloud Linux部署DeepSeek R1:7B版本

可以通过Docker部署,也可以手动安装,这里选择手动安装。手动安装又有两种方法,一是通过uv安装,另一个是通过pip安装,由于某种原因uv的安装文件无法下载,这里选择pip命令安装。

1. 查看python3版本号,至少3.11版本

python3 -V

如果有多个python版本,可以通过以下命令切换:

alternatives --config python

2.安装pip

以python3.11为例

yum install python3.11-pip

3.安装open-webui:

pip3.11 install open-webui

如果是以root用户安装,会有以下警告: 

WARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv

4. 安装sqlite3 3.35版本

Open WebUI 运行依赖sqlite3.35版本,可通过以下脚本下载并编译安装。

wget https://www.sqlite.org/2021/sqlite-autoconf-3350000.tar.gz

tar -zxvf sqlite-autoconf-3350000.tar.gz

cd sqlite-autoconf-3350000

./configure --prefix=/usr/local/sqlite3

make & make install

编辑bashrc文件,设置环境变量:

vi ~/.bashrc

添加以下内容:

export PATH=/usr/local/sqlite3/bin:$PATH 
export LD_LIBRARY_PATH=/usr/local/sqlite3/lib:$LD_LIBRARY_PATH

加载环境变量:

source ~/.bashrc

确认版本:

sqlite3 --version 

输出:

3.35.0 2021-03-12 15:10:09 acd63062eb06748bfe9e4886639e4f2b54ea6a496a83f10716abbaba4115500b

5. 启动Open WebUI

open-webui serve

设置安全规则:开放8080端口

创建账号后,继续

开始体验。

6. 设置上传文档

创建知识库:

创建后点击所创建的知识库名称,进入该知识库,进行文件上传:

可能会遇到以下报错 400:'NoneType' object has no attribute 'encode'

需要进行如下设置,进入管理员面板:

依次点击【设置】--【文档】

由于之前通过Ollama安装DeepSeek R1:7B 版本,,语义向量模型引擎选择Ollama,语义向量模型填写:deepseek-r1:7b

测试能够上传成功。 

<think>好的,我需要帮助用户解决在Alibaba Cloud Linux部署Jexus和Mono以支持ASP.NET 4.7的问题。首先,我得回顾用户提供的引用内容,里面提到了Jexus的安装方法、Mono的部署以及可能遇到的问题。 首先,用户的需求是详细的步骤,所以需要分步骤说明。根据引用[2],Jexus可以通过下载tar.gz包安装,而引用[3]提到使用curl执行安装脚本。可能需要结合这两种方法,或者选择其中一种更合适的方式。Alibaba Cloud Linux基于CentOS,所以需要考虑使用yum或下载源码编译安装。 接着,Mono的版本需要支持.NET 4.7。根据微软文档,Mono 5.x以上版本支持.NET 4.7,但可能需要更高版本。用户可能需要添加Mono的官方仓库来安装最新版本。引用[4]中使用的Mono版本是6.8,这可能足够。 然后,安装Jexus。根据引用[3],使用curl安装脚本可能更简便,但需要确认脚本是否适用于Alibaba Cloud Linux。或者,按照引用[2]的步骤下载tar.gz包编译安装。 配置环境变量可能需要,确保系统能找到Mono和Jexus的可执行文件。部署网站时,需要将发布的文件上传到指定目录,配置Jexus的站点配置文件,如引用[3]和[4]所述。还要注意权限问题,确保Jexus有权限访问网站文件。 测试阶段,启动Jexus服务检查状态。引用[4]提到查看版本号,可以验证安装是否成功。防火墙设置需要开放80和443端口,或者根据实际情况调整。 最后,可能遇到的问题,如HTTPS配置,引用[5]提到使用Nginx反向代理,可以考虑是否需要这样的配置。另外,MVC4的问题可能需要额外的Mono配置或补丁。 需要确保所有步骤顺序正确,没有遗漏依赖项,比如安装编译工具、依赖库等。同时,提醒用户注意版本兼容性,Mono和Jexus的版本是否支持ASP.NET 4.7。 现在整理这些思路,形成结构化的步骤,确保清晰详细,用户能一步步跟随操作。同时,生成相关问题帮助用户进一步了解可能遇到的挑战。</think>### 在Alibaba Cloud Linux部署Jexus和Mono运行ASP.NET 4.7的详细步骤 #### **1. 系统环境准备** - **更新系统** 执行命令更新软件包列表升级现有组件: ```bash sudo yum update -y ``` - **安装基础依赖** 安装编译工具和Mono/Jexus所需的依赖库: ```bash sudo yum install -y gcc-c++ cmake autoconf libtool gettext wget curl openssl-devel ``` --- #### **2. 安装Mono 6.12(支持.NET 4.7)** - **添加Mono官方仓库** 使用微软的Mono仓库确保版本兼容性: ```bash sudo rpm --import "https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF" sudo yum-config-manager --add-repo https://download.mono-project.com/repo/centos8-stable.repo ``` - **安装Mono** 安装完整的Mono环境(包含.NET 4.7支持): ```bash sudo yum install -y mono-complete ``` - **验证安装** 检查Mono版本是否≥6.12: ```bash mono --version ``` --- #### **3. 安装Jexus** - **通过脚本快速安装** 使用官方提供的脚本简化部署流程[^3]: ```bash curl https://jexus.org/release/x64/install.sh | sudo sh ``` - **手动安装(可选)** 若脚本不兼容,可下载源码包编译安装[^2]: ```bash wget http://www.linuxdot.net/down/jexus-5.4.tar.gz tar -zxvf jexus-5.4.tar.gz cd jexus-5.4 ./configure make sudo make install ``` --- #### **4. 配置ASP.NET网站** - **上传发布文件** 将Windows下编译的ASP.NET 4.7网站文件(如`publish/`目录)上传Linux服务器,建议路径为`/var/www/aspnet-site`。 - **设置目录权限** 确保Jexus进程(默认用户`www-data`)有读写权限: ```bash sudo chown -R www-data:www-data /var/www/aspnet-site sudo chmod -R 755 /var/www/aspnet-site ``` - **配置Jexus站点** 编辑Jexus的站点配置文件: ```bash sudo nano /usr/jexus/siteconf/aspnet-site ``` 内容示例: ```nginx port=80 root=/var/www/aspnet-site host=your-domain.com apphost=.,/opt/mono/bin/mono,aspnet4.7 ``` > 注:`apphost`指定Mono路径和运行时版本[^4]。 --- #### **5. 启动服务与验证** - **启动Jexus** 使用以下命令启动服务: ```bash sudo /usr/jexus/jws start ``` - **检查服务状态** 确认Jexus版本和运行状态: ```bash sudo /usr/jexus/jws -v sudo /usr/jexus/jws status ``` - **开放防火墙端口** 若使用防火墙,需允许HTTP/HTTPS流量: ```bash sudo firewall-cmd --permanent --add-port=80/tcp sudo firewall-cmd --reload ``` --- #### **6. 常见问题处理** - **HTTPS支持** 若需SSL证书,可通过Nginx反向代理实现[^5]: 1. 在宝塔面板或手动配置Nginx监听443端口。 2. 将证书文件(如`.pem`和`.key`)配置到Nginx中。 3. 反向代理到Jexus的本地端口(如80)。 - **MVC4兼容性问题** 若遇到路由或视图解析错误,需检查Mono的System.Web.Mvc.dll版本是否匹配。可通过NuGet重新安装MVC4包或手动替换组件。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

xyzcto

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值