feat: nextcloud to subdomain

This commit is contained in:
s-prechtl 2025-06-30 13:23:40 +02:00
parent f8eb02b725
commit bdce4c0908
2 changed files with 5 additions and 51 deletions

View file

@ -296,11 +296,10 @@
# networking.firewall.allowedUDPPorts = [ ... ]; # networking.firewall.allowedUDPPorts = [ ... ];
# Or disable the firewall altogether. # Or disable the firewall altogether.
# networking.firewall.enable = false; # networking.firewall.enable = false;
security.pam.services = security.pam.services = {
{
hyprlock = {}; hyprlock = {};
"kdewallet" = { "kdewallet" = {
kwallet.enable = true; kwallet.enable = true;
}; };
}; };
networking.firewall.checkReversePath = false; networking.firewall.checkReversePath = false;

View file

@ -9,26 +9,12 @@
networking.firewall.allowedTCPPorts = [80 443]; networking.firewall.allowedTCPPorts = [80 443];
services.nextcloud = { services.nextcloud = {
enable = true; enable = true;
hostName = "sprechtl.ddns.net"; hostName = "nextcloud.sprechtl.ddns.net";
https = true; https = false;
configureRedis = true; configureRedis = true;
caching.redis = true; caching.redis = true;
autoUpdateApps.enable = true; autoUpdateApps.enable = true;
package = pkgs.nextcloud31; package = pkgs.nextcloud31;
settings = let
prot = "https";
host = config.services.nextcloud.hostName;
dir = "/nextcloud";
proxies = [ "127.0.0.1" ];
in {
overwriteprotocol = prot;
overwritehost = host;
overwritewebroot = dir;
overwrite.cli.url = "${prot}://${host}${dir}/";
htaccess.RewriteBase = dir;
log_type = "file";
trusted_proxies = proxies;
};
config = { config = {
adminuser = "admin"; adminuser = "admin";
adminpassFile = "/etc/nextcloud-admin-pass"; adminpassFile = "/etc/nextcloud-admin-pass";
@ -46,44 +32,13 @@
virtualHosts.${config.services.nextcloud.hostName} = { virtualHosts.${config.services.nextcloud.hostName} = {
forceSSL = true; forceSSL = true;
enableACME = true; enableACME = true;
listen = [
{
addr = "0.0.0.0";
port = 80;
}
{
addr = "0.0.0.0";
port = 443;
ssl = true;
}
{
addr = "127.0.0.1";
port = 8080;
}
];
locations = {
"/nextcloud/" = {
priority = 9999;
extraConfig = ''
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-NginX-Proxy true;
proxy_set_header X-Forwarded-Proto https;
rewrite ^/nextcloud(.*)$ $1 break;
proxy_pass http://127.0.0.1:8080/; # tailing / is important!
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
proxy_redirect off;
'';
};
};
}; };
}; };
security.acme = { security.acme = {
acceptTerms = true; acceptTerms = true;
certs = { certs = {
${config.services.nextcloud.hostName}.email = "stefan@tague.at"; ${config.services.nextcloud.hostName}.email = "your-letsencrypt-email@example.com";
}; };
}; };
} }