Discord · 指南

如何搭建 Lavalink 服务器

更新于 October 10, 2026 2 分钟阅读

本页内容
  1. Lavalink 的运行要求
  2. 下载并启动 Lavalink
  3. 配置 application.yml
  4. YouTube、Spotify 及其他音源
  5. 将机器人连接到 Lavalink
  6. 在 HytHost 上托管 Lavalink
  7. 常见问题

Lavalink 是一个面向 Discord 音乐机器人的独立音频服务器。机器人向它发送指令——播放这首、跳过、调节音量——而 Lavalink 承担繁重的工作:获取曲目、编码音频,并将其推流到语音频道。机器人本身保持轻量,一台 Lavalink 服务器即可服务多个服务器(guild)。

本指南将搭建 Lavalink 4,进行安全配置,添加 YouTube 插件并将机器人连接上去——无论是在你自己的机器上,还是使用 Lavalink 托管。

Lavalink 的运行要求

  • Java 17 或更高版本。Lavalink 推荐使用最新的 LTS 版本。
  • Lavalink 4.2 或更高版本。自 2026 年 3 月起,Discord 只允许端到端加密语音(DAVE 协议),而 Lavalink 4.2.0 是首个支持它的版本。旧版服务器已无法在 Discord 中播放音频。
  • 机器人中的客户端库需支持相同版本——当前的 lavalink-client、Shoukaku、Wavelink、lavalink.py 等均已支持。如何选择请参阅如何制作 Discord 音乐机器人。
  • 一台持续运行的机器,因为 Lavalink 一停,音乐也就停了。

下载并启动 Lavalink

  1. 从 GitHub 的最新发行版下载 Lavalink.jar,放入一个空文件夹。
  2. 在同一文件夹中创建 application.yml(见下一节)。
  3. 在该文件夹中启动:
java -jar Lavalink.jar

当日志显示已启动时,Lavalink 即准备就绪。在 Linux 服务器上,Lavalink 文档建议将其作为 systemd 服务运行,以便在崩溃和重启后自动恢复;官方也发布了 Docker 镜像。

配置 application.yml

一个带 YouTube 插件的最简 Lavalink 4 配置:

server:
  port: 2333
  address: 0.0.0.0
lavalink:
  plugins:
    - dependency: "dev.lavalink.youtube:youtube-plugin:1.18.2"
      snapshot: false
  server:
    password: "a-long-random-password"
    sources:
      youtube: false
      soundcloud: true
      bandcamp: true
      twitch: true
      vimeo: true
      http: true
      local: false
plugins:
  youtube:
    enabled: true
    allowSearch: true
  • password——务必修改。示例配置自带 youshallnotpass,这是公开的密码;任何找到你服务器的人都能用默认密码使用它。
  • port——默认为 2333;机器人连接的就是这个端口。
  • sources.youtube: false——内置的 YouTube 源已被弃用。插件会取代它,其文档要求必须关闭内置源。
  • http: true 允许机器人播放直链;官方示例提示,在没有代理的情况下,这可能暴露你服务器的 IP。

YouTube、Spotify 及其他音源

插件列在 lavalink.plugins 下,并在启动时下载。有两个值得了解:

  • youtube-source(dev.lavalink.youtube:youtube-plugin)——YouTube 播放与搜索。YouTube 会主动拦截自动化访问,因此在插件更新之前可能会失效;请保持使用最新版本。
  • LavaSrc(com.github.topi314.lavasrc:lavasrc-plugin)——增加 Spotify、Apple Music、Deezer 等支持。Spotify 和 Apple Music 链接只读取曲目信息,音频则从其他音源播放。
注意条款。YouTube 的条款不允许未经许可下载或转播内容,Discord 的社区准则也禁止分享侵犯知识产权的内容。运营音乐机器人,就意味着要为它播放的内容负责。

将机器人连接到 Lavalink

每个 Lavalink 客户端都需要相同的四个值,合称一个节点(node):

设置值
Host运行 Lavalink 的机器地址
Portapplication.yml 中的 server.port
Password你设置的 lavalink.server.password
Securefalse,除非你把 Lavalink 放在 HTTPS 之后

例如,Python 中的 Wavelink 使用 wavelink.Node(uri="http://your-host:2333", password="...")。如果机器人无法连接,请先检查密码,再确认从机器人运行的位置能否访问该端口。

在 HytHost 上托管 Lavalink

  1. 选择 Lavalink 作为运行环境。在 Discord 机器人托管页面选择方案,并选择 Lavalink 作为语言。服务器会在 Java 21 上安装最新的 Lavalink 及官方示例配置。
  2. 修改密码。在文件管理器中打开 application.yml,替换默认密码。面板已将地址和端口设置为你服务器自己的端口,这两项请保持不变。
  3. 添加 YouTube 插件(如需 YouTube):加入上方配置中的插件块和 youtube: false,然后重启。
  4. 连接机器人,使用面板中显示的服务器地址和端口,以及你设置的密码。

Lavalink 作为独立服务器运行,与机器人分开。你可以为机器人订购一个方案,再订购一个 Lavalink 运行环境的方案;或者在拥有多个机器人槽位的方案中,请我们将其中一个切换为 Lavalink 运行环境。在我们的测试中,Lavalink 空闲时占用不到 200 MB;对于一个小型机器人,我们的建议是 1 GB,如果同时在很多服务器中播放则需要更多。

Lavalink 是 HytHost Discord 机器人托管的运行环境之一,与 Node.js、Python 和 Java 并列——€0.89/月起。

查看机器人托管方案
常见问题

常见问题

一个面向 Discord 音乐机器人的独立音频服务器。机器人告诉它播放什么,Lavalink 负责获取、编码音频并推流到语音频道,因此机器人本身保持轻量。

Java 17 或更高版本,Lavalink 团队推荐最新的 LTS 版本。同时还需要 Lavalink 4.2 或更高版本,因为 Discord 现在要求加密语音。

示例配置中的端口为 2333,密码为 youshallnotpass。在让服务器上线之前请修改密码;默认密码人尽皆知。

内置的 YouTube 源已被弃用。添加 youtube-source 插件,将 sources.youtube 设为 false 并重启。如果之后再次失效,请更新插件,因为 YouTube 会定期改变拦截自动化访问的方式。

没有官方数据。在我们的测试中,它空闲时占用不到 200 MB;对于小型机器人,我们的建议是 1 GB,如果同时在很多服务器中播放则需要更多。

让音乐不停歇

在 HytHost Discord 机器人托管上运行 Lavalink 或你的机器人,提供七种运行环境、MySQL 数据库和备份——€0.89/月起。

Live chat 8 AM – 11 PM (Chișinău time) · tickets answered during business hours

这篇指南对你有帮助吗?