Skip to content

REST server nginx systemd socket activation#156

Open
ThomasWaldmann wants to merge 2 commits intoborgbackup:masterfrom
ThomasWaldmann:rest-server-nginx-systemd-socket-activation
Open

REST server nginx systemd socket activation#156
ThomasWaldmann wants to merge 2 commits intoborgbackup:masterfrom
ThomasWaldmann:rest-server-nginx-systemd-socket-activation

Conversation

@ThomasWaldmann
Copy link
Copy Markdown
Member

No description provided.

@ThomasWaldmann ThomasWaldmann force-pushed the rest-server-nginx-systemd-socket-activation branch 3 times, most recently from 3250bf4 to 2880b8d Compare April 24, 2026 15:46
@ThomasWaldmann ThomasWaldmann force-pushed the rest-server-nginx-systemd-socket-activation branch 10 times, most recently from 8a9d53e to b936b9f Compare April 24, 2026 20:18
See discussion in PR borgbackup#155 and thanks to @f-froehlich for bringing this up!

The backend code will work ok even with an empty path or without a trailing slash.

Note: the REST server currently does not support sub-paths, but only serves one
backend / store at the root path.

There is now a contrib/server/nginx-systemd/ subdirectory with a reverse proxy setup
example that can support multiple stores at different sub-paths.
Add --socket-activation flag: the server adopts a pre-bound socket
from systemd (SD_LISTEN_FDS) instead of binding itself, enabling
on-demand per-repo startup without port management.

Add contrib/server/nginx-systemd/ with an example configuration
for systemd / nginx / borgstore.server.rest using domain sockets.
See the README there for details.

We use these example configs in CI testing (see ci.yml) on github.
@ThomasWaldmann ThomasWaldmann force-pushed the rest-server-nginx-systemd-socket-activation branch from b936b9f to 11e3910 Compare April 25, 2026 00:12
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant