当前位置: 首页 > news >正文

AI大模型学习三十三、HeyGem.ai 服务端(ubuntu)docker 安装 /客户端(win)分离部署

一、说明

服务端安装官方安装

客户端在windows 上安装

解决分离问题

利用samba实现共享,我是在局域网访问,安装道理可以在非局域网访问

重新弄了一块显卡,所以驱动也重新装下

二、环境准备

(base) mucuna@x58:~$ lsb_release  -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 25.04
Release:        25.04
Codename:       plucky
 

 

heygem: 18180 和 8383
samba :445

三、显卡驱动安装

sudo apt install nvidia-driver-570

安装完后重启,然后nvidia-smi查看 

 四、安装docker与docker composer

sudo apt update && sudo apt install -y docker.io
sudo systemctl enable --now docker
将当前用户加入 Docker 组
sudo usermod -aG docker $USER
newgrp docker  # 立即生效或重新登录
sudo tee /etc/docker/daemon.json <<EOF
{"registry-mirrors" : ["https://docker.registry.cyou",
"https://docker-cf.registry.cyou",
"https://dockercf.jsdelivr.fyi",
"https://docker.jsdelivr.fyi",
"https://dockertest.jsdelivr.fyi",
"https://mirror.aliyuncs.com",
"https://dockerproxy.com",
"https://mirror.baidubce.com",
"https://docker.m.daocloud.io",
"https://docker.nju.edu.cn",
"https://docker.mirrors.sjtug.sjtu.edu.cn",
"https://docker.mirrors.ustc.edu.cn",
"https://mirror.iscas.ac.cn",
"https://docker.rainbond.cc",
"https://do.nark.eu.org",
"https://dc.j8.work",
"https://dockerproxy.com",
"https://gst6rzl9.mirror.aliyuncs.com",
"https://registry.docker-cn.com",
"http://hub-mirror.c.163.com",
"http://mirrors.ustc.edu.cn/",
"https://mirrors.tuna.tsinghua.edu.cn/",
"http://mirrors.sohu.com/" 
],"insecure-registries" : ["registry.docker-cn.com","docker.mirrors.ustc.edu.cn"],
"debug": true,
"experimental": false
}
EOF
sudo systemctl restart docker
 
# 下载静态编译的 docker-compose(x86_64 示例)
sudo curl -L "https://github.com/docker/compose/releases/download/v2.23.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose# 添加执行权限
sudo chmod +x /usr/local/bin/docker-compose

五、安装nvida工具包

# 安装
curl -fsSL https://nvidia.github.io/libnvidia-container/gpgkey | sudo gpg --dearmor -o /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg \&& curl -s -L https://nvidia.github.io/libnvidia-container/stable/deb/nvidia-container-toolkit.list | \sed 's#deb https://#deb [signed-by=/usr/share/keyrings/nvidia-container-toolkit-keyring.gpg] https://#g' | \sudo tee /etc/apt/sources.list.d/nvidia-container-toolkit.list
sudo apt-get update
sudo apt-get install -y nvidia-container-toolkit# 运行命令自动配置docker、  可留意执行命令前后/etc/docker/daemon.json 的文件内容
sudo nvidia-ctk runtime configure --runtime=docker# 重启docker
sudo systemctl restart docker

六、安装samba

1、安装

sudo apt update
sudo apt install samba
sudo cp /etc/samba/smb.conf{,_default}sudo cat <<'EOF' | sudo tee /etc/samba/smb.conf
[global]smb ports = 445workgroup = WORKGROUPserver string = %h server (Samba, Ubuntu)log file = /var/log/samba/log.%mmax log size = 1000logging = filepanic action = /usr/share/samba/panic-action %dserver role = standalone serverobey pam restrictions = yesunix password sync = yespasswd program = /usr/bin/passwd %upasswd chat = *Enter\snew\s*\spassword:* %n\n *Retype\snew\s*\spassword:* %n\n *password\supdated\ssuccessfully* .pam password change = yesmap to guest = bad userusershare allow guests = yes
[heygem_data]
path = /data/program/
writable = yes
browsable = yes
guest ok = no
valid users = ubuntu
create mask = 0755
directory mask = 0755
EOF
# 创建heygem_data目录、并给777权限、
mkdir -p /data/program/heygem_data
chmod 777 -R /data/program/heygem_data# 如果没有ubuntu用户、 则需要新建一个、
useradd ubuntu -s /sbin/nologin ubuntu# 为 Samba 添加用户、 并配置密码、 !!!  记住这个密码、 一会windows上挂载samba需要、
smbpasswd -a ubuntu# 检查是否成功添加用户、可以查看 Samba 用户列表、、
sudo pdbedit -L# 验证 Samba 配置是否正确、
testparm# 查看共享状态、
smbstatus# 启动samba服务、
sudo systemctl enable --now smbd
sudo systemctl enable --now nmbd

2、挂载服务器samba到Z驱动器 

打开我的电脑, 右键此电脑, 选择 映射网络驱动器 , 到驱动器选择Z, 文件夹填写 \\192.168.1.111\heygem_data , 会提示输入账号密码,

会出错喔

win+R 输入gpedit.msc

 我的是连接成功了,上面就应该只有Z,当然也可以选别的,和后面前端设置一样就可

七、 安装node

sudo apt update
sudo apt install nodejs npm# 配置npm加速
npm config set registry http://registry.npmmirror.com

 八、部署heygem服务器端

# 克隆项目
mkdir -p /data/program
cd /data/program
git clone https://github.com/duixcom/Duix.Heygem.git# 修改容器挂载路径、
cd /data/program/Duix.Heyge/deploy
sed -i 's#~#/data/program#g'  docker-compose-linux.yml# 启动服务端
docker compose -f docker-compose-linux.yml up -d

九、heygem前端客户端

cd /data/program/Duix.Heyge# 更换客户端信息、、
# 更换盘符信息、默认是D盘、改成Z盘、
# 感谢<可以但没必要> 指正、之前这里没有加-i参数、不会实际修改文件内容、、
sed -i 's#D:#Z:#g' src/main/config/config.js# !!!   注意替换x.x.x.x为你云服务器的外网IP、 
# 总之要保证客户端能通过这个地址、访问你部署在ubuntu中docker部署的heygem后端服务、、
sed -i 's/127.0.0.1/192.168.1.111/g'  src/main/config/config.js# 修改package.json, 添加 -- --no-sandbox, 
# 否则会报错:   [0327/165731.077480:FATAL:electron_main_delegate.cc(287)] Running as root without --no-sandbox is not supported. See https://crbug.com/638180.
# vim package.json  # 修改如下行、
#     "start": "electron-vite preview -- --no-sandbox",# 修改electron-builder.yml, 否则编译的exe启动时会报错: 
sed  -i  's/npmRebuild: false/npmRebuild: true/g' electron-builder.yml# 安装编译exe的依赖包, 
sudo apt update
sudo dpkg --add-architecture i386 && sudo apt-get update && sudo apt-get install wine32 wine64# 安装依赖
sudo npm install# 构建exe文件
sudo npm run build:win# windows的安装包路径,查查
dist/HeyGem-1.0.4-setup.exe
#正好用用sabma 看行不行
sudo cp dist/HeyGem-1.0.4-setup.exe /data/program/heygem_data

 

 

十、测试

明天来,还在下载

http://www.lqws.cn/news/177895.html

相关文章:

  • 【人工智能】神经网络的优化器optimizer(二):Adagrad自适应学习率优化器
  • 智能仓储的未来:自动化、AI与数据分析如何重塑物流中心
  • vscode使用系列之快速生成html模板
  • LlamaFactory × 多模态RAG × Chat-BI:万字长文探寻RAG进化轨迹,打造卓越专业AI助手
  • 安卓基础(ProGuard vs R8)
  • FART 脱壳某大厂 App + CodeItem 修复 dex + 反编译还原源码
  • 【Linux】Linux 进程间通讯-管道
  • gitlab CI/CD本地部署配置
  • WebRTC 与 WebSocket 的关联关系
  • 【JVM】Java虚拟机(一)——内存结构
  • Qt生成日志与以及报错文件(mingw64位,winDbg)————附带详细解说
  • 在Windows下利用LoongArch-toolchain交叉编译Qt
  • 【PmHub面试篇】PmHub中基于Redis加Lua脚本的计数器算法限流实现面试专题解析
  • 数据库SQLite基础
  • Ubuntu18.6 学习QT问题记录以及虚拟机安装Ubuntu后的设置
  • 【Qt】:设置新建类模板
  • C/C++ 面试复习笔记(4)
  • Excel 发现此工作表中有一处或多处公式引用错误。请检查公式中的单元格引用、区域名称、已定义名称以及到其他工作簿的链接是否均正确无误。弹窗
  • 关于iview组件中使用 table , 绑定序号分页后序号从1开始的解决方案
  • excel数据对比找不同:6种方法核对两列数据差异
  • 天机学堂(学习计划和进度)
  • 内容力重塑品牌增长:开源AI大模型驱动下的智能名片与S2B2C商城赋能抖音生态种草范式
  • ESP8266(NodeMcu)+GPS模块+TFT屏幕实现GPS码表
  • 【PhysUnits】16.1 完善Var 结构体及其运算(variable.rs)
  • 多种风格导航菜单 HTML 实现(附源码)
  • 32单片机——基本定时器
  • 基于springboot的校园社团信息系统的设计与实现
  • 【案例分享】如何借助JS UI组件库DHTMLX Suite构建高效物联网IIoT平台
  • golang入门
  • 前端中slice和splic的区别