引言

voceChat是一个轻量的开源网络聊天室软件。但是,作为聊天室,主要目的就是为了能够和自己的好友即使身处不同的地方也能互相发文,这就需要我们的VoceChat服务器能够通过外网访问。如今大多数家庭网络使用的都是“大公网IP”,而独立公网IP则需要升级企业套餐,大几千的价格直接就吓退了很多用户。

但是有一家公司叫cloudflare,它提供的cloudflare Tunnel极大地便利了这项操作,让用户无需公网IP、无需内网穿透即可实现远程访问。

准备工作

  • 一台已经开启SSH功能的Linux系统电脑或NAS,这里以fnOS为例。
  • MobaXterm(使用SSH连接nas)
  • 一个域名

配置Vocechat

我们需要完成Vocechat的配置

1. 检查你的系统架构(新手必看避坑点)

在拉取镜像前,先确认你设备的 CPU 架构,这决定了你该用哪个版本的镜像:

  •  常规 PC / 绝大多数 NAS (Intel/AMD 芯片):默认使用 linux/amd64 架构。
  •  玩客云 / 树莓派 / 部分 ARM 架构 NAS:属于 linux/arm64 架构。

2. 使用 MobaXterm 登录并配置环境

打开 MobaXterm,通过 SSH 连接到你的 fnOS。我们可以先通过以下命令安装 Docker 并规范好防火墙(确保 3000 端口不被拦截):

# 更新并安装 Docker(fnOS 已自带 Docker,可跳过此步)
apt update && apt install -y curl
curl -fsSL https://get.docker.com | bash
systemctl start docker && systemctl enable docker

# 关闭可能冲突的防火墙组件
ufw disable
systemctl stop iptables
systemctl stop nftables

3. 一行命令,挂载持久化数据启动

为了保证以后升级、重启时聊天记录和账号数据不丢失,**强烈建议使用目录映射(Volume)的方式来启动容器**。
我们在当前目录下创建一个 data 文件夹用于存放数据,然后运行以下命令:

# 运行 VoceChat 容器(x86 架构电脑/NAS 请复制下方命令)
docker run -d --restart=always \
  -p 3000:3000 \
  --name vocechat-server \
  -v ./data:/home/vocechat-server/data \
  privoce/vocechat-server:latest

如果你是 ARM64 架构设备,请将上面命令中的最后一行替换为:privoce/vocechat-server:latest-arm64

4. 本地环境验证

容器启动后,在同局域网的浏览器中输入:http://你的NAS局域网IP:3000(在本地测试时先不用管域名绑定)。
如果成功看到 VoceChat 的初始化注册界面,说明本地服务已经完美运行。我们根据提示设置服务器,当我们到“配置隧道”界面时,点确定,等待加载完成,即可获得你的公网访问地址。

 

​下面就可以进入主界面了,点击左下角设置,找的“cloudflare隧道”,点击启动隧道,访问显示的网址即可远程访问

结语

大功告成!现在,你可以直接把这个链接甩给你的好兄弟了。从此以后,你们获得了一个真正属于你们自己、数据绝不经过任何第三方云端的私有聊天服务器。
​在这个充斥着大数据分析和隐私裸奔的时代,利用 Cloudflare Tunnel 筑起的高墙,我们硬是在家里的旧电脑上,为彼此圈出了一块绝对安全的“秘密基地”。无论是深夜的胡侃,还是日常的联动,这里所有的聊天记录都稳稳地躺在你自己的设备里。
​技术不一定越贵越好,能白嫖大厂的基础设施来解决我们的真实痛点,就是最爽的折腾。你的服务器跑起来了吗?搭建过程中遇到什么坑?快在评论区聊聊,顺便给你的好兄弟也转一份吧!

 

更多推荐