No description
Enhanced the shared Nix configuration by adding recommended settings for Nginx, including Gzip, optimization, and TLS settings. Disabled proxy settings to prevent interference with WebSocket. Additionally, enabled automatic SSL certificate generation using Let's Encrypt and configured fail2ban for improved security. This update aims to strengthen the web application's security and performance while maintaining flexibility in the Nginx setup. |
||
|---|---|---|
| config | ||
| web-app | ||
| .gitignore | ||
| DEPLOYMENT-GUIDE.md | ||
| README.md | ||
Krops Multi-Machine Deployment
This project deploys NixOS configurations to two machines using krops with nix-25.05.
Structure
.
├── krops.nix # Main deployment configuration
└── config/
├── machine1/
│ └── configuration.nix # Machine 1 NixOS config
└── machine2/
└── configuration.nix # Machine 2 NixOS config
Setup
-
Update target hostnames/IPs in
krops.nix:- Change
root@machine1.example.comto your machine1 address - Change
root@machine2.example.comto your machine2 address
- Change
-
Customize NixOS configurations in
config/machine1/configuration.nixandconfig/machine2/configuration.nix
Usage
Deploy to a single machine:
nix-build ./krops.nix -A machine1 && ./result
nix-build ./krops.nix -A machine2 && ./result
Deploy to all machines:
nix-build ./krops.nix -A all && ./result
Requirements
- SSH access to target machines as root
- Target machines running NixOS
- nix installed on the deployment machine