You maybe interested in a project I've been working on (nix-server-tools): https://github.com/kish10/nix-server-tools.
The goal is to create tools using Nix to make it easy to deploy applications on a server.
----
So far the project can:
- Create docker-compose files that: deploy a `Caddy` server & server applications in a reverse proxy through the Docker bridge network.
---- This way Caddy & Let's Encrypt takes care of TSL certificates, while thanks to Nix & Docker we simply need to create docker-compose files. (for an easy deployment)
- Deploy a `paperless-ngx` application that backups files using `borgbackup` & sends an error email when the backup fails.
----
Next week I plan to add:
- A Nix generated `cloud-init.yaml` file to make it easy to initialize & setup new servers (for easy & quick deployment of applications that need to run on additional servers).
----
Examples:
- Deploying a "hello-test-app": https://github.com/kish10/nix-server-tools/blob/main/reverse...
- Deploying a "hello-test-app" & "paperless-ngx -- with borgbackup & error emails": https://github.com/kish10/nix-server-tools/blob/main/reverse...
----
I just started open sourcing the code this week, so there isn't a lot of documentation & examples.
I could definitely use feedback & contributions, so I'd appreciate it if you would take a look.