Linux

Where Does Gluetun Store Config and State?

Gluetun configures through environment variables with an optional control-server config file, and keeps no local database.

Last updated

Gluetun is configured, not stored. VPN provider, protocol, credentials, firewall, and DNS all arrive as environment variables in the compose file. The container keeps no database and minimal on-disk state.

The exceptions prove the rule. A mounted /gluetun volume holds the optional control-server auth file. The HTTP control server on port 8000 exposes runtime state. Everything else recreates from the compose definition.

Where Gluetun stores this, by platform

Linux
/gluetun (container volume for optional auth config)

Env-driven with no database. Optional control-server auth mounts at /gluetun/auth/config.toml. Control API serves on port 8000. Move means copying compose and env files.

Frequently asked questions

How do I move Gluetun to a new server?

Copy the compose file and env file to the new host. Credentials live in those files, so move them securely. Volumes hold no state worth migrating beyond the optional config.

Does Gluetun need a config file?

It needs one only for control-server authentication roles. Mount a config.toml at /gluetun/auth/config.toml for that. Everyday VPN behavior stays in environment variables.

Notice an outdated path? Let us know.