保姆级教程:在Ubuntu 20.04上搞定Ollama WebUI可视化界面(含Node.js 18.19.0安装避坑)
零基础在Ubuntu 20.04上部署Ollama WebUI全攻略第一次在Linux服务器上部署Web应用别担心这篇教程会像老朋友一样手把手带你完成整个流程。我们将从最基础的环境检查开始一步步安装Node.js、配置ollama-webui直到最终在浏览器中看到那个令人兴奋的聊天界面。过程中遇到的每一个坑我都已经踩过并找到了解决方案——你现在要做的就是跟着我的脚步避开这些陷阱。1. 环境准备与Node.js精准安装在开始之前让我们先确认你的Ubuntu 20.04系统是否准备好了。打开终端输入以下命令检查系统架构cat /etc/os-release uname -m你应该看到类似这样的输出确认是Ubuntu 20.04和x86_64架构NAMEUbuntu VERSION20.04.6 LTS (Focal Fossa) IDubuntu ID_LIKEdebian PRETTY_NAMEUbuntu 20.04.6 LTS VERSION_ID20.04 ... x86_641.1 获取特定版本的Node.jsOllama WebUI对Node.js版本有严格要求v18.19.0是最稳定的选择。我们直接从官方镜像下载预编译的二进制包避免编译带来的各种问题wget https://cdn.npmmirror.com/binaries/node/v18.19.0/node-v18.19.0-linux-x64.tar.xz下载完成后分两步解压这个压缩包xz -d node-v18.19.0-linux-x64.tar.xz tar -xvf node-v18.19.0-linux-x64.tar1.2 配置环境变量将解压后的文件夹移动到/opt目录这是一个存放第三方软件的标准位置然后设置环境变量sudo mv node-v18.19.0-linux-x64 /opt/编辑/etc/profile文件在末尾添加以下内容export NODE_HOME/opt/node-v18.19.0-linux-x64 export PATH$NODE_HOME/bin:$PATH保存后让配置立即生效source /etc/profile验证安装是否成功node -v npm -v正确的输出应该是v18.19.0 9.6.7注意如果遇到权限问题记得在移动文件夹和使用sudo命令时输入密码。有些云服务器默认禁用sudo密码这时可以直接执行命令。2. 部署Ollama WebUI核心组件2.1 获取ollama-webui-lite源码选择一个合适的目录比如你的家目录克隆官方仓库git clone https://github.com/ollama-webui/ollama-webui-lite.git cd ollama-webui-lite2.2 安装项目依赖这里使用npm ci而不是npm install因为它会严格按照package-lock.json文件安装依赖确保环境一致性npm ci常见问题解决方案网络超时或404错误这是因为默认镜像可能不稳定。可以切换淘宝镜像npm config set registry https://registry.npmmirror.com npm ci权限不足如果在全局安装时遇到EACCES错误可以通过以下方式解决mkdir ~/.npm-global npm config set prefix ~/.npm-global echo export PATH~/.npm-global/bin:$PATH ~/.bashrc source ~/.bashrc版本冲突确保你的Node.js版本确实是v18.19.0其他版本可能会导致不可预知的问题。3. 配置与启动Web服务3.1 启动开发服务器在项目目录下运行npm run dev你应该看到类似这样的输出 ollama-webui-lite0.0.1 dev vite dev --host VITE v4.4.9 ready in 1324 ms ➜ Local: http://localhost:3000/ ➜ Network: http://your_server_ip:3000/ ➜ press h to show help3.2 解决403访问问题如果无法访问http://your_server_ip:3000并且在Ollama日志中看到403错误需要配置CORSecho export OLLAMA_ORIGINS* ~/.bashrc source ~/.bashrc然后重启Ollama服务sudo systemctl restart ollama3.3 配置反向代理可选如果你想通过域名访问或者启用HTTPS可以配置Nginx反向代理。首先安装Nginxsudo apt update sudo apt install nginx然后创建一个新的配置文件sudo nano /etc/nginx/sites-available/ollama-webui添加以下内容替换your_domain.com为你的域名server { listen 80; server_name your_domain.com; location / { proxy_pass http://localhost:3000; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection upgrade; proxy_set_header Host $host; proxy_cache_bypass $http_upgrade; } }启用配置并重启Nginxsudo ln -s /etc/nginx/sites-available/ollama-webui /etc/nginx/sites-enabled sudo nginx -t sudo systemctl restart nginx4. 高级配置与优化4.1 使用PM2持久化运行为了避免SSH会话结束后服务终止我们可以使用PM2来管理Node.js进程npm install -g pm2 pm2 start npm run dev --name ollama-webui pm2 save pm2 startup执行最后一条命令后PM2会提示你运行一个生成的命令来设置开机启动。4.2 环境变量配置在项目根目录创建.env文件可以自定义一些设置# ollama-webui-lite/.env VITE_OLLAMA_BASE_URLhttp://localhost:11434 PORT3000 HOST0.0.0.04.3 更新与维护当有新版本发布时更新流程如下git pull origin main npm ci pm2 restart ollama-webui如果遇到依赖冲突可以尝试rm -rf node_modules package-lock.json npm ci4.4 安全加固建议防火墙设置sudo ufw allow 3000/tcp sudo ufw enableHTTPS配置使用Lets Encrypt免费证书sudo apt install certbot python3-certbot-nginx sudo certbot --nginx -d your_domain.com访问控制如果需要基本认证可以在Nginx配置中添加auth_basic Restricted Content; auth_basic_user_file /etc/nginx/.htpasswd;然后创建密码文件sudo sh -c echo -n username: /etc/nginx/.htpasswd sudo sh -c openssl passwd -apr1 /etc/nginx/.htpasswd5. 故障排查指南当遇到问题时可以按照以下步骤排查检查服务状态pm2 list sudo systemctl status ollama sudo systemctl status nginx查看日志pm2 logs ollama-webui journalctl -u ollama -f sudo tail -f /var/log/nginx/error.log端口检测sudo netstat -tulnp | grep 3000 sudo lsof -i :11434常见错误代码错误代码可能原因解决方案EADDRINUSE端口被占用更改端口或终止占用进程ECONNREFUSEDOllama服务未运行启动Ollama服务HMR连接失败开发服务器问题检查npm run dev输出404路由错误前端路由配置问题确保使用history模式完全重置 如果一切都不工作了可以尝试pm2 delete ollama-webui rm -rf node_modules package-lock.json npm ci pm2 start npm run dev --name ollama-webui最后记得在浏览器中访问时Ollama Server URL应该设置为http://localhost:11434或者你的Ollama服务实际监听的地址。如果一切配置正确你现在应该能看到一个功能完整、界面美观的Ollama WebUI了。
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2475935.html
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!