Skip to main content
Lavalink provides multiple flexible configuration methods to suit different deployment scenarios, from simple single-server setups to large-scale distributed deployments.

Configuration Methods

There are three main ways to configure Lavalink:

Config File

The easiest way to configure Lavalink using application.yml

Environment Variables

Configure Lavalink using environment variables for containerized deployments

Config Server

Advanced feature for managing multiple Lavalink servers centrally

Config File

This is the most common and straightforward method. You create a file called application.yml in the directory where you start your Lavalink server. This file contains all configuration options in YAML format.
Recommended for most users and simple deployments
See the application.yml documentation for detailed configuration options.

Environment Variables

You can configure Lavalink using environment variables, which is particularly useful for:
  • Docker/container deployments
  • Cloud platforms
  • CI/CD pipelines
  • Keeping sensitive information separate from config files
Environment variables follow a naming convention based on the YAML structure. For example, server.port becomes SERVER_PORT. See the environment variables documentation for the complete list and examples.

Config Server

This is an advanced feature designed for large deployments managing multiple Lavalink instances.
The Lavalink Config Server allows you to manage the configuration of multiple Lavalink servers from a centralized location. This is useful for:
  • Managing multiple Lavalink instances
  • Centralized configuration updates
  • Git-based configuration management
  • Profile-based configurations
See the Config Server documentation for setup instructions.

Configuration Priority

You can use a combination of configuration methods. Environment variables take precedence over the application.yml file.
Configuration is loaded in the following order (later sources override earlier ones):
  1. Default values
  2. application.yml file
  3. Environment variables
  4. Config Server (if configured)

Quick Start Examples

Create application.yml in your Lavalink directory:
server:
  port: 2333
  address: 0.0.0.0

lavalink:
  server:
    password: "youshallnotpass"
    sources:
      youtube: false
      bandcamp: true
      soundcloud: true

Advanced Configuration Topics

Route Planner

Configure IP rotation strategies for avoiding rate limits

IPv6 Setup

Setup guides for IPv6 networking across different providers

Next Steps

1

Choose Your Method

Decide which configuration method works best for your deployment
2

Review Options

Explore the application.yml reference to understand all available options
3

Configure Sources

Enable or disable audio sources based on your needs
4

Set Security

Configure a strong password and appropriate network settings

Build docs developers (and LLMs) love