一、說明
服務端安裝官方安裝
客戶端在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服務器端
修改?docker-compose-linux.yml,修改下配置文件
# 克隆項目
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
十、測試
明天來,還在下載