Add nginx proxy in demo configuration
This commit is contained in:
parent
9785204a30
commit
6adbd6d8ac
1 changed files with 48 additions and 5 deletions
|
@ -1,16 +1,20 @@
|
||||||
{ config, pkgs, ... }:
|
{ config, lib, pkgs, modulesPath, ... }:
|
||||||
|
|
||||||
{
|
{
|
||||||
virtualisation.vmVariant.virtualisation.forwardPorts = [
|
#virtualisation.vmVariant.virtualisation.forwardPorts = [
|
||||||
{ from = "host"; host.port = 8001; guest.port = 8001; }
|
# { from = "host"; host.port = 8001; guest.port = 8001; }
|
||||||
];
|
#];
|
||||||
|
|
||||||
networking.hosts = {
|
networking.hosts = {
|
||||||
"127.0.0.1" = [ "hedgedoc.nixin.local" ];
|
"127.0.0.1" = [ "hedgedoc.nixin.local" ];
|
||||||
};
|
};
|
||||||
|
|
||||||
networking.hostName = "demo";
|
networking.hostName = "demo";
|
||||||
#networking.firewall.enable = false;
|
#networking.firewall.enable = false;
|
||||||
networking.firewall = {
|
networking.firewall = {
|
||||||
allowedTCPPorts = [ 8001 ];
|
allowedTCPPorts = [ 80 443 ];
|
||||||
};
|
};
|
||||||
|
|
||||||
services.hedgedoc = {
|
services.hedgedoc = {
|
||||||
enable = true;
|
enable = true;
|
||||||
settings.domain = "hedgedoc.nixin.local";
|
settings.domain = "hedgedoc.nixin.local";
|
||||||
|
@ -22,11 +26,50 @@
|
||||||
"hedgedoc.nixin.local"
|
"hedgedoc.nixin.local"
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|
||||||
users.users.operator = {
|
users.users.operator = {
|
||||||
isNormalUser = true;
|
isNormalUser = true;
|
||||||
extraGroups = [ "wheel" ];
|
extraGroups = [ "wheel" ];
|
||||||
initialPassword = "test";
|
initialPassword = "test";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
security.acme.defaults.email = "contact@nixin.local";
|
||||||
|
security.acme.acceptTerms = true;
|
||||||
|
|
||||||
|
services.nginx = {
|
||||||
|
enable = true;
|
||||||
|
|
||||||
|
# Use recommended settings
|
||||||
|
recommendedGzipSettings = true;
|
||||||
|
recommendedOptimisation = true;
|
||||||
|
recommendedProxySettings = true;
|
||||||
|
recommendedTlsSettings = true;
|
||||||
|
|
||||||
|
# Only allow PFS-enabled ciphers with AES256
|
||||||
|
sslCiphers = "AES256+EECDH:AES256+EDH:!aNULL";
|
||||||
|
|
||||||
|
virtualHosts."hedgedoc.nixin.local" = {
|
||||||
|
forceSSL = true;
|
||||||
|
enableACME = true;
|
||||||
|
root = "/var/www/hedgedoc";
|
||||||
|
locations."/".proxyPass = "http://127.0.0.1:8001";
|
||||||
|
locations."/socket.io/" = {
|
||||||
|
proxyPass = "http://127.0.0.1:8001";
|
||||||
|
proxyWebsockets = true;
|
||||||
|
extraConfig =
|
||||||
|
"proxy_ssl_server_name on;"
|
||||||
|
;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
environment.systemPackages = with pkgs; [
|
||||||
|
git
|
||||||
|
wget
|
||||||
|
tmux
|
||||||
|
mosh
|
||||||
|
htop
|
||||||
|
];
|
||||||
|
|
||||||
system.stateVersion = "24.05";
|
system.stateVersion = "24.05";
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue