深浅模式
VPS云酒馆部署
温馨提示:
使用电脑操作,不要问手机行不行,这个真不行。
为了避免错误,代码请直接从本文档中复制。
你可以点击代码块右上角直接复制。如:
(鼠标放上去就会显示这个图标啦)
一、服务器购买
请查看VPS购买建议
教程中的内容,自行选购VPS服务器。
教程链接:VPS购买建议
二、使用 SSH 工具连接你的 VPS 服务器
使用 SSH工具
,可以便捷的连接到你的服务器。
针对小白用户或者自定义需求没有特别高的用户,我推荐使用 XTerminal
。
界面友好,操作简单,上传下载服务器上的文件也方便。
1,下载安装 Xterminal
你可以通过官方下载地址进行下载(Win和Mac用户都在这里下):
请自行下载安装
安装完成后打开,XTerminal 会提示你设置一个仓库密码,这个你自己随便设置就可以了。
2,配置服务器连接
在软件顶部左侧点击 SSH 图标
,选择 + 服务器
按照下方要求和下图所示方式填写:
- 名称:随便写,如果你有多个服务器,能区分哪个是哪个就行;
- 地址:填写你服务器的
IP 地址
; - 端口:保持默认的
22
; - 验证方式:选
密码
; - 登录用户:
root
(其他服务器厂商可能不同,具体看厂商的要求); - 登录密码:填写你的服务器的
密码
; - 测试连接:测试一下,一般直接就显示成功了;
- 最后点击
创建
忽略下图中的"邮件"。
注意
如果这里你怎么连都连不上,比如一直提示TIMEOUT超时。
你可以在HostVDS后台删除你的服务器,重新建一个,注意换一个地区。
例如美国地区就有两个,这个连接不上就删掉换另一个。(此举动并不会造成额外的扣费)。
连接你的服务器
会显示:
root 是你的用户名,laopobao 这个是我之前设置的主机名。
有些厂商不支持自定义主机名,这里会显示一串乱码一样的,无所谓的,没有影响。
软件右侧提示可以开启监控,我们直接点`开启`,再点`确认`(非必要开启):
稍等一会儿,你就可以看到你服务器的实时信息了。很方便是不是~
接下来,我们就正式进入到:使用命令行操作服务器的环节了。
你只需要直接复制命令,逐步执行(按回车/enter
键就是执行)
注意
如果在本教程中复制了命令,但是 Ctrl+V 无法在 XTeminal 中粘贴命令。
那么在 Xterminal 中点击右键,也可以粘贴命令。
3,使用 root 账户
如果你的代码开头原本就显示 root@主机名
这种形式,就不用管这一步
bash
sudo -i
如果需要输入密码,就输入服务商提供给你连接服务器的密码。
你输入密码的时候屏幕不会显示内容,放心输入就行,如果你的密码复杂,直接粘贴也可以的。
输入完成后按回车,代码行开头显示 root@xxxx:~
就成功了
方便后续操作的一致性,我们统一使用 root
账户进行操作,后续如果你登录后找不到安装的酒馆文件,记得看一下是不是 root
账户,不是的话执行这条命令即可切换。
4,更新软件库
bash
sudo apt update && sudo apt upgrade -y
如果出现蓝色底带选项的内容,直接按回车,不要修改任何内容。
代码执行完了后会再次显示一行 root@主机名:#$
的空行,你可以根据此判断命令有没有执行完
(因为有时候命令会执行的比较慢)
(我这个执行的就挺慢的,基本上是和服务器的配置和网络速度有关的)
5,安装常用软件
安装 curl、wget、nano
bash
sudo apt install -y curl wget nano
6,校正系统时间
bash
sudo timedatectl set-timezone Asia/Shanghai
这一步不会返回任何内容
7,查看当前时区
bash
timedatectl
返回中的内容中有:Time zone: Asia/Shanghai (CST, +0800)
字样,就是设置成功了。
8,优化性能
bash
bash <(wget -qO- https://raw.githubusercontent.com/jerry048/Tune/main/tune.sh) -t
等待系统参数优化完成
9,增加 Swap 缓存
非常适合内存比较小的 VPS,使用部分硬盘资源来拓展缓存,避免内存占用过高导致的服务直接卡死。
bash
wget -O swap.sh https://raw.githubusercontent.com/yuju520/Script/main/swap.sh && chmod +x swap.sh && clear && ./swap.sh
会提示:
输入数字 1
,回车
会提示要输入 swap 数值,建议是内存的 2 倍。
这里的单位是 m,如果你的内存是 512M,就输入 1024,如果你的内存是 1G,就输入 2048,如果你的内存是 2G,就输入 4096,以此类推。
我的内存是 2G 的,所以我输入 4096,然后回车执行。
基本上瞬间就设置好了,会提示 swap 创建成功。
你也可以查询是否设置成功:
bash
free -m
swap 的 total
中有内容就是成功了。
(没成功也无所谓,非酒馆必要选项)
10,安装 Docker
使用一键脚本安装 docker,你也可以到 docker 官网查找安装方式。
这行一键安装脚本来自 1Panel 官网,后续我们也要安装 1Panel 的。
尤其是国内的服务器,建议使用这个脚本安装,免得因为镜像源问题导致安装失败。
bash
bash <(curl -sSL https://linuxmirrors.cn/docker.sh)
执行后会让你选择两次安装源,使用键盘上的“↑
”、“↓
”箭头调整选项,然后回车执行
安装。
例如:
我是境外服务器,直接用最下面的官方方式安装。
国内服务器可以选择其他的源(都一样的,放心装)
安装过程中会让你多次选择,全部保持默认,别改,直接按回车。
验证是否安装成功:
bash
docker -v
返回版本号即代表安装成功。例如:Docker version xxx, build xxxxx
设置 docker 开机自启动:
bash
sudo systemctl enable docker
如下图返回就表示成功:
三、部署酒馆
直接运行以下代码下载酒馆:
bash
git clone https://github.com/SillyTavern/SillyTavern.git -b release
耐心等待文件下载完成,如图所示就是完成了。(关注 100%
和 done
字符,而不是关注数字),例如:
这一步如果没成功或者意外断开,只需要再次执行这行代码重新下载即可。
如果提示:-bash: git command not found
,这是因为服务器中没有安装 git,安装一下就行。
bash
apt install git
这一步完成后,我们先不着急,先去安装和配置 1Panel
。
四、安装 1Panel 面板
通过 1Panel 面板方便的启动、重启酒馆,以及编辑酒馆文件、查看日志等。
1,通过以下代码安装 1Panel
bash
curl -sSL https://resource.fit2cloud.com/1panel/package/quick_start.sh -o quick_start.sh && bash quick_start.sh
2,安装过程配置
在安装过程中,会需要多次进行设置,跟着我一步一步来。
① 首先执行代码后会让你选择语言,我们看到 2 是中文,就输入数字 2,然后按回车
② 设置安装目录,我们保持默认即可,什么都不用改,直接按回车
③ 接下来提示你设置一个端口,这个端口是用来访问 1Panel 面板的,所以设置一个好记的。
例如我设置端口为 10086
,那就直接输入数字 10086,然后回车
④ 设置安全入口,这个我们先临时设置一个,后续可以选择关闭。例如我先设置为 admin
。记住这一步设置的内容
⑤ 设置面板用户,这里是设置用户名的
,随便设置一个你自己的用户名,然后按回车
使用英文或者数字或英文数字组合,不要用中文
。
记住这个用户名,后面要用,也可以改
⑥ 设置面板密码
,同上,设置一个你自己记得住的密码,然后按回车
使用英文或者数字或英文数字组合,不要用中文
。
记住这个密码,后面要用,也可以改
⑦ 安装完成,获取面板地址
安装完成后,会显示你之前设置的信息。
这里的内部地址不是你的面板访问地址!
你的访问地址是http://你的服务器IP:10086/admin
你的服务器 IP 就是你购买服务器时,邮件发给你的那个 IP 地址!也就是你在 Xterminal 中设置登录时候的 IP 地址。
五、在 1Panel 中设置酒馆环境
1,登录 1Panel
使用你安全入口访问 1Panel 管理面板。即
http://你的服务器IP:10086/admin
(如果你设置的不是 10086 端口和 admin 安全入口,自行更改就行)
打开后使用用户名和密码登录 1Panel 面板。
勾上同意协议。
2,1Panel 基本设置
2.1 (可选)更改 1panel 用户名和密码
如果你想更改 1Panel 用户名和密码的话,侧边栏面板设置
→ 面板
,找到面板用户
和面板密码
,点后面的齿轮小图标
设置:
2.2 (可选)更改端口和取消安全入口
如果你不想用之前设置的端口,可以在侧边栏面板设置
→ 安全
中,找到面板端口
,来更改端口。
如果你每次登录 1Panel 不想要在地址后面加"/admin",可以关掉
在侧边栏面板设置
→ 安全
中,找到安全入口
,点击设置。
在打开的页面中,删除安全入口设置中的内容,点击右下角的确认图标(图太长我没截到确认)
之后就可以直接使用 你的服务器IP:10086
来访问你的 1Panel 面板了。
(我目前取消了安全入口的,因为嫌麻烦)
3,设置酒馆 Node 环境
我们来创建一个 Node 环境
,酒馆运行必须要依托于 Node 环境
按照下方提示完成设置:
提示
关于下图的信息:
- ③ 中目录指向酒馆安装目录,因为我们是使用 root 用户操作的,所以点击前面的文件夹图标,先打开 root 文件夹,在勾选 SillyTavern 文件夹就可以了。如果你是使用其他非 root 用户操作的,这里要更换为实际路径;
- ④ 启动命令下拉选择 start 【node server.js】;
- ⑤ 应用端口必须设置为 8000;
- ⑥ 外部访问默认是打开的,必须打开,不然无法访问;
- ⑧ 国内服务器可以更换淘宝源或腾讯源,避免安装 node 失败,国外服务器不用改;
设置完成后,会显示环境信息:
4,更改配置文件
点击打开酒馆的目录(源码目录下面的文件夹图标
)
(之后所有更改配置文件、查看或者替换自己的数据都可以在这里面操作)
找到 config.yaml
文件,直接点击打开
寻找并更改以下内容
(只改冒号后面的部分,冒号后面有个空格)
- 将
listen: false
更改为listen: true
- 将
whitelistMode
: true 更改为whitelistMode
: false - 将
basicAuthMode
: false 更改为basicAuthMode
: true - 在
basicAuthUser
中,设置username(用户名)
和password(密码)
,注意要用英文的双引号包裹
。
如图:(用户名和密码设置成你自己要用的)
basicAuthUser
中的 username
和 password
之间是英文冒号,不是中文冒号。
注意!!!
补充一条:对于VPS用户而言,请在Config.yaml文件中额外再更改一条配置项目:
- 将
numberOfBackups: 50
更改为numberOfBackups: 5
解释:该条目是为每个聊天和设置文件保留的备份数量,默认50,更改为5(为了数据安全,请务必配置教程后面的MINIO备份数据,在第八部分)
计算:如果你的聊天长度比较长,每个备份30M算,那么这个单个聊天备份的容量就会高达50*30M=1500M(≈1.5GB)
随着你的聊天文件越来越大,备份文件同样会滚雪球越来越大,以VPS孱弱的硬盘容量,很容易撑爆。后果就是你将无法登录你的酒馆。
(5份备份+MINIO的备份,基本丢也丢不了多少的)
更改完成后,点击确定,会弹出一个“更新完成”的提示
六、启动酒馆
点击侧边栏 网站
,选择 运行环境
,点击 Node.js
,找到我们的酒馆项目,在操作中点击 重启
。
必要操作
你每次更改完 config.yaml 后,都必须要重启酒馆!否则不生效!
你可以查看日志
,点击日志下方的查看
。
重要!
你的酒馆的日志,也要在这里进行查看
日志最底部出现以下内容,就代表酒馆启动成功了:
(哪天用着用着太卡了也可以来这里重启试试)
酒馆访问地址:
你现在可以在任意设备的浏览器中,使用 你的服务器 IP:8000
来访问酒馆。
提示
如果你有域名,也可以使用Nginx来反向代理该地址,之后即可通过你的域名来访问酒馆。
(冒号是英文字符的冒号)
输入你刚刚在 config.yaml
文件中设置的用户名和密码,然后登录(不需要那个双引号)
好啦!可以畅玩酒馆啦!
七、如何更新酒馆
酒馆的更新非常简单,使用 Xterminal 连接你的服务器。
使用下方这一行代码即可完成更新:
bash
cd ~/SillyTavern && git pull
注意:如果是非 root
用户,且你的酒馆安装在 root 用户下,先使用 sudo -i
命令切换到 root 用户,再执行这行命令。如果是是非 root 用户,但是安装在当前用户的根目录下,可以直接使用这行命令更新。
更新完成后,进入 1Panel 面板,参考前面的方式,启动/重启你的云酒馆。完成啦!
八、如何备份你的酒馆数据
1Panel 备份酒馆数据非常丝滑,但同时我们需要用到一个第三方的对象存储服务。
请注意,教程中的对象存储服务需要实名认证,介意的话可以跳过本部分内容。
1,注册缤纷云
点击以下链接进入缤纷云
:
https://console.bitiful.com/login
点击 注册新账号
根据提示,使用 手机号
进行注册
注册成功后将会进入缤纷云的管理后台。
我们需要先完成实名认证
(这一步为必须,否则没有存储容量)
(emmm……)
根据要求输入 姓名
和 身份证号
即可完成认证。(不需要扫脸什么的)
2,创建存储桶和获取必要信息
① 点击左侧栏的 对象存储
→ 桶列表
② 在桶列表中,点击 创建桶
随便输入一个名字(使用英文),然后点确定
③ 添加子用户
点击左侧栏的 对象存储
→ AccessKey
在子用户管理中点击 添加子用户
填写一个子用户名,然后点 确定
点击确定后,会显示 Access Key
和 Secret Key
不要关掉,自己保存好。
④ 保存好你的 Access Key 和 Secret Key
危险操作
这个 Access Key 和 Secret Key 只会显示一次。
请不要关闭这个页面,也不要刷新,否则你将无法再次看到你的 Access Key 和 Secret Key!
请复制好你的 Access Key 和 Secret Key,然后关闭这个页面。
保存好 key 后,点击 设定权限
打开所有权限
,然后关闭权限设置的弹窗。
3,在 1Panel 中设置备份账号
3.1 打开备份账号
点击左侧栏的 面板设置
然后点击主页面顶栏的 备份账号
3.2 添加 MINIO 备份账号
① 下滑找到 MINIO
部分,点击 添加 MINIO
② 设置参数
在打开的窗口中填写参数
其中,Endpoint
要选择 https
,填写内容为:
bash
s3.bitiful.net
备份目录不用写!
具体设置见图:
Bucket 不要手动输入,必须点获取桶
后,下拉框出现你刚刚建好的桶,之后才能正常备份。
全部设置完后右下角点确定
。
设置完应该是这样的:
3.3 创建计划任务
① 点击面板左侧 计划任务
,然后点击 创建计划任务
② 填写计划任务设置
请按照下图指引进行填写。
危险操作
第⑥步,备份账号处,请不要添加 服务器磁盘,这会大量占用你的服务器磁盘空间。
VPS服务器磁盘本身就不大,满了的话直接就炸了。
③ 手动执行一次备份,测试是否成功
在我们设置好的计划任务中,点击 执行
点击执行旁边的 查看报告
,就可以看到正在执行备份了。
等待一会儿,执行完成。
(主要看网速,一般一两分钟怎么也执行完了)
4,在缤纷云中查看备份的文件
回到缤纷云(https://console.bitiful.com/)
① 点击左侧栏的 对象存储
→ 桶列表
② 点进去我们创建的桶
接着点进去 directory
→ 备份酒馆数据
文件夹,就可以看到我们刚刚备份的数据了
接下来,1Panel 就会按照你设置的计划任务,每隔 6 个小时就全自动备份一次你的酒馆数据。
最多保存 20 份。
注意
缤纷云账户免费可用空间为:50G
每天免费可用流量为:5G
所以建议不要装一堆备份插件,把自己的酒馆目录搞的很大,这样也不好备份 0.0
(因为 VPS 本身就有磁盘,数据一般不会丢失的,所以用这个再备份一下,数据基本就很安全啦)
九、如何同步其他酒馆数据到 VPS 云酒馆
1,本地酒馆数据同步至 VPS
1.1 获取酒馆数据
打开你现在的酒馆,通过下图方式备份数据(将会是一个 ZIP 格式的压缩包)
不需要解压这个文件!将压缩包名字重命名为 data.zip
(重命名的原因是为了之后的操作方便你能找到文件和理解)
1.2 打开你的 1Panel 文件管理
打开 1Panel 面板,在 侧边栏
选择 系统
→ 文件
将会打开文件管理页面。
如果你是使用 root 用户部署的 1panel 和酒馆……
依次打开 root
→ SillyTavern
文件夹
这个路径:
1.3 上传你的 data.zip 文件
点击 上传
在打开的右侧窗口中,点击 上传文件
上传你的数据文件 data.zip
,然后 点击右下角的 确认
等待一下就上传成功了。
1.4 解压文件
我们先创建一个临时的文件夹,方便操作。
点击 创建
→ 文件夹
我们先创建一个名字叫 linshi
的文件夹
点击右下角的 确认
,就创建好了
接下来,我们在当前目录中找到我们上传的 data.zip
文件,点击打开
在打开的右侧窗口中,点击 解压路径下面的 小文件夹图标
,勾选刚刚创建的 linshi 文件夹
,然后点 确认
1.5 覆盖现有数据
① 打开 linshi
文件夹
点击最上面 名称
旁边的勾选框
,勾选
,就全选了文件夹中的所有内容
② 移动并覆盖数据
点击 移动
点击路径中的 SillyTavern
,可以回到 SillyTavern
文件夹
在 SillyTavern 文件夹中再逐一打开:data
→ default-user
路径如:
在 default-user
文件夹中点击 粘贴
(数字不用管)
在弹出的窗口中,确认路径没错,其他内容不要进行修改,直接在右下方点击 确认
小弹窗出现 “移动成功
”,就完成数据替换了。
回到你的 VPS 酒馆,刷新页面
,应该可以看到迁移好的完整数据。
(如果确认操作无误,但是数据没有同步过来,那么请去尝试重启你的酒馆)
2,HuggingFace 酒馆数据同步至 VPS
如果你的 HF云酒馆还可以正常访问,那就和普通酒馆一样导出数据。用前面的方法。
如果你是 HF云酒馆,且 HF云酒馆已经无法访问……
2.1,获取 Dataset 中备份的数据
① 登录你的 Hugging Face 账号
打开 Hugging Face,登录你的 Hugging Face 账号。登录地址为:
② 点击右上角头像
,再点击ID
③ 在打开的页面中,找到自己的Dataset
,如图:点击打开
④ 在打开的页面中点击 Files and versions
⑤ 下载文件中的最后一个数据
我这个没怎么用,你的数据可能大得多,是正常的。
【这里没数据的话,和之前的酒馆告别吧,重新部署】
你将得到一个.tar.gz
格式的压缩包,例如 default-user-2025xxxxx.tar.gz
不要解压这个文件!将压缩包名字重命名为data.tar.gz
(为了后面你的操作更加方便)
2.2 打开你的 1Panel 文件管理
打开 1Panel 面板,在 侧边栏
选择 系统
→ 文件
将会打开文件管理页面。
如果你是使用 root 用户部署的 1panel 和酒馆……
依次打开 root
→ SillyTavern
文件夹
这个路径:
1.3 上传你的 data.tar.gz 文件
点击 上传
在打开的右侧窗口中,点击 上传文件
上传你的数据文件 data.tar.gz
,然后 点击右下角的 确认
等待一下就上传成功了。
1.4 解压文件
我们先创建一个临时的文件夹,方便操作。
点击 创建
→ 文件夹
我们先创建一个名字叫 linshi
的文件夹
点击右下角的 确认
,就创建好了
接下来,我们在当前目录中找到我们上传的 data.tar.gz
文件,点击打开
在打开的右侧窗口中,点击 解压路径下面的 小文件夹图标
,勾选刚刚创建的 linshi 文件夹
,然后点 确认
1.5 覆盖现有数据
① 打开 linshi
文件夹
点击最上面 名称 旁边的勾选框
,勾选
,就全选了文件夹中的所有内容
你也可以只勾选
default-user
文件夹
② 移动并覆盖数据
点击 移动
点击路径中的 SillyTavern
,可以回到 SillyTavern
文件夹
在 SillyTavern 文件夹中再打开 data 文件夹
,路径如:
在 data
文件夹中点击 粘贴
(数字不用管,我用的其他文件演示的)
在弹出的窗口中,确认路径没错
,其他内容不要进行修改
,直接在右下方点击 确认
小弹窗出现 “移动成功
”,就完成数据替换了。
回到你的 VSP 酒馆,刷新页面,应该可以看到迁移好的完整数据。
(如果确认操作无误,但是数据没有同步过来,那么请去尝试重启你的酒馆)
十、拓展内容
1,多用户酒馆开启方式
如果你想要开启多用户酒馆……和你的小伙伴一起使用:
请按照以下步骤逐一操作。不可跳过步骤
请注意
请注意:多用户云酒馆可能无法通过部分老师的角色卡审核群验证。
本教程仅分享技术操作,请遵守写卡老师的要求和规定。
你需要先在
config.yaml
中将enableUserAccounts: false
改为enableUserAccounts: true
【必须】重启你的云酒馆
,进入酒馆后,打开管理员面板,给自己的默认用户(default-user)设置一个密码
,如图:- 【必要】给自己的默认用户设置一个密码是必要的
- 设置密码的时候不要输错!设置密码的时候不要输错!设置密码的时候不要输错!
- 先别急创建新用户,我们等下再设置。
设置完成后,继续回去更改
config.yaml
- 将
basicAuthMode: true
更改为basicAuthMode: false
- 将
enableDiscreetLogin: false
更改为enableDiscreetLogin: true
- 将
再次回去
重启你的云酒馆
。再次打开酒馆后,你就会发现弹出一个登录界面,你的用户名是
default-user
,密码是你刚刚在酒馆内设置管理员密码。点击 Login 登录
。登录进去后,再次打开管理员面板添加一个新用户,这个用户我们作为自己使用的用户。
- 如果你觉得就用 default-user 登录也行的话,也可以,更好。
- 设置密码的时候不要输错!设置密码的时候不要输错!设置密码的时候不要输错!
同样的方式,我们再创建一个新用户,给自己的朋友用。
- 例如我再创建一个
xiaobai
的用户,并且为他设置好密码(他后面可以自己改的)。
- 例如我再创建一个
最后查看一下我们的所有用户:
黄色框选内容为每个用户登录时候的用户名
;蓝色框处 Admin 代表管理员,User 代表普通用户
。Admin 可以打开管理员面板,更改用户信息或创建新用户,而 User 不能。- 红色框处的箭头是更改身份的,
↑
是设置为管理员,↓
是设置为普通用户。(不要更改 default-user 的身份
)
为了以后偷懒方便登录,我们将刚刚创建,打算自己用的用户(例如我演示用的 yonghuming),设置为管理员用户,即点击
↑
,然后查看对应的身份有没有改变。给朋友的账户,就保持 User 吧,
不要轻易开放管理员权限
。登出当前的用户,然后用你新的管理员账户登录使用吧。
你也可以测试一下给朋友用的账户有没有问题,确认没有问题就发给朋友用吧
享受你/你们的云酒馆!
教程结束