Linux

Where Does Nginx Proxy Manager Store Hosts and Certs?

NPM keeps hosts in /data, certs in /etc/letsencrypt, and proxy truth in its DB. Back up all three, not just /data.

Last updated

Nginx Proxy Manager splits truth three ways and every incomplete backup teaches this. The /data volume holds generated nginx configs and keys. The letsencrypt volume holds certificates. The database holds the host list the UI shows.

SQLite keeps all three on disk together, MySQL splits the third into a container. Know which backend you run before planning a move. The compose file spells it out in DB_ variables.

Where Nginx Proxy Manager stores this, by platform

Linux
/data (inside container)

Generated configs, keys, and the SQLite file when used. Mounted from ./data in official compose. Never sufficient alone with MySQL.

Linux
/etc/letsencrypt (inside container)

Certificates NPM requested itself. Mounted from ./letsencrypt. Pair with a DB dump for full restores.

Frequently asked questions

How do I back up Nginx Proxy Manager?

Copy /data and /etc/letsencrypt plus a dump of the MySQL database. The admin UI reads hosts from the DB, so folder-only restores show an empty panel.

Can NPM run without MySQL?

Switch to SQLite with DB_SQLITE_FILE under /data. Then one folder holds everything and migration becomes a plain copy. Default for small setups.

Why does NPM ignore my mounted certs?

NPM tracks certs in its database and never scans the folder. Import outside certs through Add Certificate, then Custom, in the admin UI.

Notice an outdated path? Let us know.