目 录CONTENT

文章目录

Docker部署Haven教程:开源Discord替代方案,自建私有聊天服务器,支持聊天、语音、视频和屏幕共享

Administrator
2026-07-18 / 0 评论 / 0 点赞 / 4 阅读 / 0 字

前言

在日常沟通中,我们经常会使用 Discord、Slack、Teams 等第三方即时通讯工具进行交流,但这些平台的数据、服务器以及服务规则都掌握在平台方手中,对于注重隐私和数据自主控制的用户来说,自建一个属于自己的聊天平台无疑是一个更好的选择。

本期给大家介绍一个非常不错的开源项目 —— Haven。

Haven 是一个类似 Discord 的开源、自托管实时通信平台,通过 Docker 可以快速部署到自己的 VPS 或服务器上,搭建一个完全属于自己的私有聊天服务器。

它不仅支持基础的文字聊天,还提供了频道管理、语音交流、视频通话、屏幕共享、文件传输等功能,能够满足个人团队、小型组织以及技术社区的日常沟通需求。

相比传统第三方聊天工具,使用 Haven 最大的优势就是:

✅ 数据存储在自己的服务器中,隐私更加可控
✅ 开源项目,代码透明,可自由部署和扩展
✅ Docker 一键部署,降低搭建门槛
✅ 支持自定义域名和 HTTPS 安全访问
✅ 无需依赖第三方平台,打造专属通信空间

本教程将详细介绍如何在 Linux VPS 服务器上通过 Docker 部署 Haven,包括环境准备、Docker Compose 配置、域名绑定、HTTPS 配置以及功能测试等完整流程。

如果你拥有一台闲置 VPS,或者希望搭建一个属于自己的私有聊天平台,那么 Haven 将会是一个非常值得尝试的开源项目。

下面我们开始部署 Haven,打造属于自己的 Discord 替代方案。

项目图示

主界面-web页面
001-hcOo.png

Haven主题——全桌面聊天
002-rWBT.png

活动——游戏、Flash 模拟等等
003-UHyI.png

屏幕共享 — 支持多流语音聊天
004-toLU.png

屏幕共享
005-LyRo.png

视频聊天
006-tgCc.png

项目简介

免费私密聊天,就在你的电脑上
Haven官网
Haven 是一个功能齐全的聊天服务器,您可以自行托管。它提供语音聊天、屏幕共享、25 多个主题、GIF 动图、子频道、端到端加密的私信、文件共享等功能——无需云端,无需大型科技公司账户,您的消息不会被任何人读取
007-jbMv.png

这是给谁用的?

  • 想要找个私密场所聊天的小型朋友团体
  • 自托管用户,在自己的硬件上运行服务
  • 注重隐私的社区,已经厌倦大型科技公司
  • 需要语音和屏幕共享,但又不想使用 Discord
  • 局域网游戏团队,需要轻量级聊天服务
  • 家庭实验室爱好者,正在寻找轻量级的聊天服务

Haven vs 主流聊天平台对比

功能HavenFluxerDiscordSlackSignal
自托管(数据完全属于自己)
无需注册企业账号
端到端加密私信
语音聊天付费
屏幕共享付费
开源项目
主题 / 自定义25+主题CSS自定义有限有限
群组频道
无需邮箱 / 手机注册
永久免费(无付费版本限制)Freemium(免费增值)Freemium(免费增值)Freemium(免费增值)
好友加入无需安装
支持手机浏览器仅App仅App仅App
导入 Discord 历史记录-

✨ 功能特性

Haven v2.0 功能列表

分类功能说明
数据迁移Discord 历史记录导入支持直接导入 Discord 服务器完整数据,无需第三方工具和命令行
数据迁移导入内容支持频道、主题、论坛帖子、表情、置顶消息、附件、头像、历史聊天记录
数据迁移导入方式粘贴 Discord Token,选择服务器即可完成迁移
平台支持桌面端支持支持 Windows、Linux、macOS 浏览器访问
平台支持移动端支持支持手机和平板浏览器访问,无需安装 App
平台支持自适应界面根据屏幕尺寸自动调整布局
平台支持移动端功能支持频道、私信、语音聊天、文件共享、侧边栏等完整功能
聊天功能实时消息支持实时聊天和消息同步
聊天功能图片上传支持发送图片文件
聊天功能文件分享支持用户之间共享文件
聊天功能输入状态支持输入中提示
聊天功能消息编辑支持修改已发送消息
聊天功能消息回复支持引用回复消息
聊天功能Emoji反应支持消息表情互动
聊天功能@提醒支持成员提及提醒
聊天功能子频道管理支持频道名称修改和子频道折叠
搜索功能消息搜索支持 Ctrl+F 搜索任意频道消息
搜索功能搜索结果高亮关键词并快速跳转消息
语音功能P2P语音聊天用户之间直接点对点传输音频
语音功能音量控制每个用户可单独调节音量
语音功能静音功能支持用户静音和屏蔽
语音功能说话指示器显示当前发言用户
语音功能提示音支持加入/退出提示音
语音功能降噪支持语音降噪处理
视频功能屏幕共享支持语音频道内共享屏幕
视频功能多人直播支持多人同时共享屏幕
视频功能网格布局支持多视频流网格显示
视频功能窗口调整支持调整观看窗口大小
视频功能使用场景适合会议、办公、游戏直播、在线教学
隐私安全加密私信私信采用端到端加密
隐私安全加密算法使用 ECDH + AES-256-GCM
隐私安全本地存储消息保存在用户设备
隐私安全无云端传输私信不会经过云端服务器
隐私安全无遥测不收集用户行为数据
隐私安全无数据分析不进行用户数据分析
音视频娱乐音乐同步支持多人同步播放音乐
音视频娱乐支持平台支持 Spotify、YouTube、SoundCloud
音视频娱乐播放同步支持播放进度同步
音视频娱乐视频共享支持屏幕共享观看视频
主题系统主题数量内置 25+ 个主题
主题系统主题类型支持 Haven、Discord、Matrix、Tron、HALO 等主题
主题系统游戏主题支持 Minecraft、塞尔达、Fallout、Elden Ring 等风格
GIF功能GIF搜索支持 GIPHY 动图搜索
GIF功能快捷命令支持 /gif 命令快速发送 GIF
GIF功能管理配置管理员可快速开启配置
文件功能文件上传支持 PDF、文档、音频、视频、压缩文件
文件功能文件大小最大支持 1.5GB 文件
文件功能管理设置管理员可调整文件大小限制
文件功能媒体播放内置音频和视频播放器
链接功能链接预览自动生成网页预览卡片
链接功能OpenGraph显示标题、描述和缩略图
命令功能斜杠命令支持快捷命令操作
命令功能内置命令/shrug、/tableflip、/roll、/flip、/me、/tts
命令功能自动补全输入命令自动提示
管理功能置顶消息管理员可置顶重要消息
管理功能置顶面板集中查看频道置顶内容
管理功能用户管理支持踢出、禁言、封禁用户
管理功能频道管理支持创建、修改和管理频道
管理功能自动清理支持自动清理旧消息
多服务器多服务器连接支持添加多个 Haven 服务器
多服务器状态显示实时显示服务器在线状态
通知功能通知音提供 5 种提示音
通知功能独立设置每个频道可单独控制通知
通知功能未读提醒保留未读消息标记
游戏功能内置游戏支持 Shippy Container、Flight 等小游戏
游戏功能Flash游戏通过 Ruffle 模拟器运行 Flash 游戏
游戏功能排行榜支持服务器级游戏排行榜

Haven v2.0 特性总结

项目支持情况
Discord替代
自托管部署
开源项目
Web访问
手机访问
聊天系统
私信系统
P2P语音
屏幕共享
文件共享
音视频同步
Discord迁移
端到端加密
多服务器管理
社区管理
多主题界面
游戏活动

部署方法

使用Docker安装

本教程使用docker的方式安装部署,简单便捷
008-OisJ.jpeg

准备条件

1)一台服务器

我们使用莱卡云VPS来演示
需要vps的可以看以下信息,配置尽量选择大点的比如2核心4G内存
莱卡云官网

2)本教程使用到的项目

本教程使用的官方github地址
https://github.com/ancsemi/Haven
009-izFx.png

目前有498 stars

3)域名(可选)

根据自己的需求,web界面建议绑定域名

VPS部署

一、Docker环境部署

在vps安装docker和docker-compose
Docker官方安装文档(英文)
https://duan.yyzq.eu.org/docker-001
Docker-Compose官方安装文档(英文)
https://duan.yyzq.eu.org/docker-002
Centos安装Docker和Docker-compose(中文)
https://duan.yyzq.eu.org//03
Ubuntu安装Docker和Docker-compose(中文)
https://duan.yyzq.eu.org//04

==推荐直接用一键脚本==

docker安装脚本

bash <(curl -sSL https://cdn.jsdelivr.net/gh/SuperManito/LinuxMirrors@main/DockerInstallation.sh)

docker-compose安装脚本

curl -L "https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose && chmod +x /usr/local/bin/docker-compose

二、部署命令

登录服务器使用root账户执行以下步骤

docker-compose命令

创建一个目录,并进入此目录

mkdir  haven ;cd haven

请自行安装vim编辑器
然后再新建docker-compose.yml

vim docker-compose.yml
services:
  haven:
    image: ywsj/haven:latest   # Haven 镜像
    container_name: haven                 # 容器名称
    ports:
      - "0.0.0.0:3000:3000"               # HTTPS 服务端口
      - "0.0.0.0:3001:3001"               # HTTP 跳转 HTTPS 端口
    volumes:
      - ./haven-data:/data                # 数据持久化目录
    environment:
      PORT: 3000                          # 服务监听端口
      HOST: 0.0.0.0                       # 监听所有地址
      SERVER_NAME: Haven                  # 页面显示名称
      TZ: Asia/Shanghai                   # 时区
    restart: always                       # 自动重启

注意端口如有冲突自行修改

三、执行容器运行命令

docker-compose up -d #运行容器
docker-compose ps  #查看是否启动成功

==正常启动如下所示==

docker-compose ps
NAME      IMAGE                          COMMAND                  SERVICE   CREATED       STATUS                 PORTS
haven     ghcr.io/ancsemi/haven:latest   "/sbin/tini -- /entr…"   haven     5 hours ago   Up 5 hours (healthy)   0.0.0.0:3000-3001->3000-3001/tcp

四、web界面

打开web页面使用
成功以后需要打开自己相应的端口3000)防火墙就可以web端访问了

主界面

https://ip:3000

注意是https
初始化管理员账号
010-dgBy.png

初始化向导
011-znKW.png

正常使用
012-ysey.png
其他功能自行探索

绑定域名

VPS上的建议绑定下域名,方便管理。
绑定域名的教程参考以下内容

绑定域名可以参考
NginxProxyManager
https://duan.yyzq.eu.org//npm-ch

==有任何问题可以直接留言或者问我==
==有任何问题可以直接留言或者问我==
==有任何问题可以直接留言或者问我==

欢迎关注我们的微信公众号!
微信公众号

0
  1. 支付宝打赏

    qrcode alipay
  2. 微信打赏

    qrcode weixin
  3. QQ打赏

    qrcode qq

评论区