added redis to nextcloud
This commit is contained in:
parent
cc2e12d180
commit
3db6776e42
1 changed files with 42 additions and 10 deletions
|
|
@ -3,6 +3,7 @@
|
||||||
services.nextcloud = {
|
services.nextcloud = {
|
||||||
autoUpdateApps.enable = true;
|
autoUpdateApps.enable = true;
|
||||||
enable = true;
|
enable = true;
|
||||||
|
caching.redis = true;
|
||||||
hostName = "nc.mc-fucker.cool";
|
hostName = "nc.mc-fucker.cool";
|
||||||
package = pkgs.nextcloud22;
|
package = pkgs.nextcloud22;
|
||||||
https = true;
|
https = true;
|
||||||
|
|
@ -16,14 +17,14 @@
|
||||||
adminuser = "Superadmin";
|
adminuser = "Superadmin";
|
||||||
defaultPhoneRegion = "DE";
|
defaultPhoneRegion = "DE";
|
||||||
};
|
};
|
||||||
poolSettings = {
|
#poolSettings = {
|
||||||
"pm" = "dynamic";
|
# "pm" = "dynamic";
|
||||||
"pm.max_children" = "128";
|
# "pm.max_children" = "256";
|
||||||
"pm.max_requests" = "500";
|
# "pm.max_requests" = "1000";
|
||||||
"pm.max_spare_servers" = "18";
|
# "pm.max_spare_servers" = "64";
|
||||||
"pm.min_spare_servers" = "6";
|
# "pm.min_spare_servers" = "24";
|
||||||
"pm.start_servers" = "12";
|
# "pm.start_servers" = "32";
|
||||||
};
|
#};
|
||||||
};
|
};
|
||||||
|
|
||||||
services.nginx = {
|
services.nginx = {
|
||||||
|
|
@ -31,18 +32,49 @@
|
||||||
package = pkgs.nginxQuic;
|
package = pkgs.nginxQuic;
|
||||||
virtualHosts."${config.services.nextcloud.hostName}" = {
|
virtualHosts."${config.services.nextcloud.hostName}" = {
|
||||||
forceSSL = true;
|
forceSSL = true;
|
||||||
#sslCertificate = "/etc/letsencrypt/live/mc-fucker.cool/cert.pem";
|
|
||||||
#sslCertificateKey = "/etc/letsencrypt/live/mc-fucker.cool/privkey.pem";
|
|
||||||
enableACME = true;
|
enableACME = true;
|
||||||
http3 = true;
|
http3 = true;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
services.redis = {
|
||||||
|
enable = true;
|
||||||
|
unixSocket = "/run/redis/redis.sock";
|
||||||
|
unixSocketPerm = 770;
|
||||||
|
};
|
||||||
|
|
||||||
|
users.groups.redis.members = [ "nextcloud" ];
|
||||||
|
|
||||||
networking.firewall.allowedTCPPorts = [ 80 443 ];
|
networking.firewall.allowedTCPPorts = [ 80 443 ];
|
||||||
security.acme = {
|
security.acme = {
|
||||||
acceptTerms = true;
|
acceptTerms = true;
|
||||||
email = "dev@mc-fucker.cool";
|
email = "dev@mc-fucker.cool";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
systemd.services.nextcloud-redis-setup = let
|
||||||
|
redisConfig = pkgs.writeText "nextcloud-redis-config.php" ''
|
||||||
|
<?php
|
||||||
|
$CONFIG = [
|
||||||
|
'memcache.distributed' => '\OC\Memcache\Redis',
|
||||||
|
'memcache.locking' => '\OC\Memcache\Redis',
|
||||||
|
'redis' => [
|
||||||
|
'host' => '${config.services.redis.unixSocket}',
|
||||||
|
'port' => 0,
|
||||||
|
'dbindex' => 0,
|
||||||
|
'timeout' => 1.5,
|
||||||
|
],
|
||||||
|
];
|
||||||
|
'';
|
||||||
|
in {
|
||||||
|
wantedBy = [ "multi-user.target" ];
|
||||||
|
before = [ "phpfpm-nextcloud.service" ];
|
||||||
|
script = ''
|
||||||
|
ln -sf ${redisConfig} ${config.services.nextcloud.datadir}/config/redis.config.php
|
||||||
|
'';
|
||||||
|
serviceConfig.Type = "oneshot";
|
||||||
|
serviceConfig.User = "nextcloud";
|
||||||
|
};
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
# vim: set et ts=2 sw=2 ai:
|
# vim: set et ts=2 sw=2 ai:
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue