nixos/hosts/architect/minio.nix

37 lines
852 B
Nix
Raw Normal View History

2023-06-01 20:08:28 +01:00
{ config, lib, pkgs, ... }:
let
domain = "s3.giugl.io";
utilities = import ./utilities.nix { inherit lib config; };
inherit (utilities) architectInterfaceAddress;
2023-02-11 02:29:48 +00:00
in
{
2021-07-13 09:53:22 +01:00
services = {
2023-06-01 20:08:28 +01:00
minio = {
enable = true;
package = pkgs.minio_legacy_fs;
};
2021-07-13 09:53:22 +01:00
nginx.virtualHosts.${domain} = {
2021-07-13 09:53:22 +01:00
forceSSL = true;
enableACME = true;
locations."/" = {
proxyPass = "http://127.0.0.1:9000";
2021-07-13 09:53:22 +01:00
extraConfig = ''
client_max_body_size 500M;
allow ${config.architect.networks.lan.net};
allow ${config.architect.networks.tailscale.net};
2021-07-13 09:53:22 +01:00
deny all;
'';
};
};
};
2023-06-01 20:08:28 +01:00
2021-07-13 09:53:22 +01:00
networking.extraHosts = ''
${architectInterfaceAddress "lan"} ${domain}
${architectInterfaceAddress "wireguard"} ${domain}
${architectInterfaceAddress "tailscale"} ${domain}
2021-07-13 09:53:22 +01:00
'';
}